1 /**
2 *
3 * @Description 自定义数组的工具类
4 * @author Bytezero·zhenglei! Email:420498246@qq.com
5 * @version
6 * @date 2021年9月12日下午8:09:13
7 * @
8 *
9 */
10 public class ArrayUtil
11 {
12 //求数组的最大值
13 public int getMax(int[] arr)
14 {
15 //求最大值
16 int maxValue = arr[0];
17 for(int i =0; i<arr.length;i++)
18 {
19 if(maxValue < arr[i])
20 {
21 maxValue = arr[i];
22 }
23 }
24 return maxValue;
25 }
26
27
28 //求数组的最小值
29 public int getMin(int[] arr)
30 {
31 int minValue = arr[0];
32 for(int i =0; i<arr.length;i++)
33 {
34 if(minValue > arr[i])
35 {
36 minValue = arr[i];
37 }
38 }
39 return minValue;
40 }
41
42
43 //求数组的总和
44
45 public int getSum(int[] arr)
46 {
47 int sum = 0;
48 for(int i =0; i<arr.length;i++)
49 {
50 sum += arr[i];
51 }
52 return sum;
53 }
54 //求数组的平均值
55 public int getAvg(int[] arr)
56 {
57 int sum = 0;
58 for(int i =0; i<arr.length;i++)
59 {
60 sum += arr[i];
61 }
62 int avgValue = sum/arr.length;
63 return avgValue;
64 }
65
66
67 //反转数组
68 public void reverse(int[] arr)
69 {
70 // for(int i = 0,j = arr.length-1;i<j;i++,j--)
71 // {
72 // int temp = arr[i];
73 // arr[i] = arr[j];
74 // arr[j] =temp;
75 // }
76 //
77
78 for(int i = 0; i <arr.length/2;i++)
79 {
80 int temp = arr[i];
81 arr[i] = arr[arr.length - i -1];
82 arr[arr.length - i -1] = temp;
83 }
84 }
85
86
87 //复制数组
88 public int[] copy(int[] arr)
89 {
90 int[] arr2 = new int[arr.length] ;
91 for(int i =0; i<arr.length;i++)
92 {
93 arr2[i] = arr[i];
94 }
95
96 // for(int i =0; i <arr2.length;i++)
97 // {
98 // System.out.print(arr2[i]+" ");
99 // }
100 // System.out.println();
101 return arr2 ;
102 }
103
104 //数组排序
105 public void sort(int[] arr)
106 {
107 for(int i =0;i <arr.length - 1;i++)
108 {
109 for(int j = 0; j <arr.length - 1 -i; j++)
110 {
111 if(arr[j]>arr[j+1])
112 {
113 int temp = arr[j];
114 arr[j] = arr[j+1];
115 arr[j+1] = temp;
116 }
117 }
118 }
119
120 // for(int i = 0; i <arr.length;i++)
121 // {
122 // System.out.print(arr[i] + " ");
123 // }
124 // System.out.println();
125 }
126
127
128 //遍历数组
129 public void print(int[] arr)
130 {
131 for(int i = 0; i <arr.length;i++)
132 {
133 System.out.print(arr[i] + " ");
134 }
135 System.out.println();
136 }
137
138 //查找指定的元素
139 public int getIndex(int[] arr,int dest)
140 {
141 //线性查找:
142 //equals
143
144
145
146
147 for(int i = 0; i <arr.length;i++)
148 {
149 if(dest==arr[i])
150 {
151 return i;
152 }
153 }
154
155 return -1; //返回辅负数 表示没有找到
156 }
157 }
 1 package com.bytezhenglei.java;
2 /**
3 *
4 * @Description 具体实现
5 * @author Bytezero·zhenglei! Email:420498246@qq.com
6 * @version
7 * @date 2021年9月12日下午8:09:47
8 * @
9 *
10 */
11 public class ArrayUtilTest
12 {
13 public static void main(String[] args)
14 {
15 ArrayUtil util = new ArrayUtil();
16
17 int[] arr = new int[] {1,55,8,26,42,-62,-6,-1,33,520,630};
18
19 //int[]arr2 = new int[arr.length];
20
21 int max =util.getMax(arr);
22 System.out.println("最大值为:"+ max);
23
24 int min = util.getMin(arr);
25 System.out.println("最小值为:"+min);
26
27 int sum = util.getSum(arr);
28 System.out.println("总和为:"+sum);
29
30 int avg = util.getAvg(arr);
31 System.out.println("平均值为:"+avg);
32
33 util.print(arr);//打印初始数组
34
35 int arr2[] =util.copy(arr); //复制数组
36 util.print(arr2);
37
38 //查找
39 int getindex = util.getIndex(arr, 55);
40 System.out.println(getindex);
41
42 //反转
43 util.reverse(arr2);
44 util.print(arr2);
45
46 //排序
47 util.sort(arr);
48 util.print(arr);
49
50
51
52
53
54
55
56
57 }
58 }

Java 自定义数组的工具类的更多相关文章

  1. java操作数组的工具类-Arrays

    static int binarySearch(type[] a, type key) 使用二分搜索法来搜索key元素在数组中的索引:若a数组不包括key,返回负数.(该方法必须已按升序排列后调用). ...

  2. Java 数字数组随机数工具类 NumberUtils、ArrayUtils、RandomUtils用法

    commons-lang3-3-3.8.1 //----------------------------------------------------------------------- /** ...

  3. 【Java】字节数组转换工具类

    import org.apache.commons.lang.ArrayUtils; import java.nio.charset.Charset; /** * 字节数组转换工具类 */ publi ...

  4. 在JAVA中自定义连接数据库的工具类

    为什么要自定义数据库连接的工具类: 在开发中,我们在对数据库进行操作时,必须要先获取数据库的连接,在上一篇随笔中提到的获取数据库连接的步骤为: 1.定义好4个参数并赋值 2.加载驱动类 3.获取数据库 ...

  5. java.util.Arrays----操作数组的工具类

    java.util.Arrays操作数组的工具类,里面定义了很多操作数组的方法 1.boolean equals(int[] a,int[] b):判断两个数组是否相等. 2.String toStr ...

  6. Rhino+envjs-1.2.js 在java运行网站js 工具类

    java爬虫遇到个页面加密的东西,找了些资料学习学习 做了个java运行js的工具类,希望对大家有用,其中用到client(获取js)可以自行换成自己的client.主要是用了 Rhino就是Java ...

  7. java中常用的工具类(一)

    我们java程序员在开发项目的是常常会用到一些工具类.今天我汇总了一下java中常用的工具方法.大家可以在项目中使用.可以收藏!加入IT江湖官方群:383126909 我们一起成长 一.String工 ...

  8. Java学习-041-颜色工具类(RGB,HEX)

    在日常的网页开发中,经常需要进行颜色数值获取.转换,例如获取红色,获取蓝色,获取绿色,RGB转十六进制颜色,十六进制颜色转RGB等,因而在学习过程中,写了一个小工具类,仅供各位小主参考! 多不闲言,直 ...

  9. JAVA中封装JSONUtils工具类及使用

    在JAVA中用json-lib-2.3-jdk15.jar包中提供了JSONObject和JSONArray基类,用于JSON的序列化和反序列化的操作.但是我们更习惯将其进一步封装,达到更好的重用. ...

  10. Java容器---Arrays & Collections工具类

    1.Array & Arrays 与Collection & Collections区别 (1)Collection": 是一个接口,与其子类共同组成一个Collection ...

随机推荐

  1. python:spacy、gensim库的安装遇到问题及bug处理

    1.spacy SpaCy最新版V3.0.6版,在CMD 模式下可以通过 pip install spacy -U 进行安装 注意这个过程进行前可以先卸载之前的旧版本 pip uninstall sp ...

  2. C/C++ 反汇编:流程控制与循环结构

    反汇编即把目标二进制机器码转为汇编代码的过程,该技术常用于软件破解.外挂技术.病毒分析.逆向工程.软件汉化等领域,学习和理解反汇编对软件调试.系统漏洞挖掘.内核原理及理解高级语言代码都有相当大的帮助, ...

  3. 开源的ChatGPT项目

    自从 ChatGPT.Stable Diffusion 发布以来,各种相关开源项目百花齐放,着实让人应接不暇. 今天,我将着重挑选几个优质的开源项目,对我们的日常工作.学习生活,都会有很大的帮助. 今 ...

  4. 洛谷P1923 求第K小的数 研讨关于输入输出效率的问题(scanf and cin ,printf and cout)

    最简单的思想就是将这n个数从小到大排序,然后直接输出下标为K的数,不用想肯定会超时,三个测试点过了,另外两个超时. 那么我想的就是,既然全排序会超时,有没有什么方法可以不用全排序也可以拿出第K小的数呢 ...

  5. MySQL 联合索引、复合索引

    复合索引也叫联合索引,经常使用,遇到问题,可以看下 这3篇文章: 1. https://www.jb51.net/article/229580.htm 2. https://blog.csdn.net ...

  6. Flink-启动后无法访问WebUI界面(Flink1.16)

    问题描述 通过./bin/start-cluster.sh启动Flink程序,正常启动后无法通过浏览器访问web UI界面,http://192.168.80.133:8081. 问题原因 Flink ...

  7. linux统计文件大小-以KB、MB、GB、TB为单位

    fileSize=`hadoop fs -ls /data/internetLog/home/DPI/idc/20180806/*201808062[0-2]* | awk 'BEGIN{ sum=0 ...

  8. JS leetcode 回文数 题解分析,数学不好是硬伤

    壹 ❀ 引 每日一题环节,今天的一道是让我相信自己数学薄弱的题目,题目来源leetcode9. 回文数,题目描述如下: 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样 ...

  9. 【framework】View添加过程

    1 前言 WMS启动流程 中介绍了 WindowManagerService 的启动流程,本文将介绍 View 的添加流程,按照进程分为以下2步: 应用进程:介绍从 WindowManagerImpl ...

  10. Oracle设置和删除不可用列

    Oracle设置和删除不可用列 1.不可用列是什么? 就是表中的1个或多个列被ALTER TABLE-SET UNUSED 语句设置为无法再被程序利用的列. 2.使用场景? If you are co ...