Java 自定义数组的工具类
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 自定义数组的工具类的更多相关文章
- java操作数组的工具类-Arrays
static int binarySearch(type[] a, type key) 使用二分搜索法来搜索key元素在数组中的索引:若a数组不包括key,返回负数.(该方法必须已按升序排列后调用). ...
- Java 数字数组随机数工具类 NumberUtils、ArrayUtils、RandomUtils用法
commons-lang3-3-3.8.1 //----------------------------------------------------------------------- /** ...
- 【Java】字节数组转换工具类
import org.apache.commons.lang.ArrayUtils; import java.nio.charset.Charset; /** * 字节数组转换工具类 */ publi ...
- 在JAVA中自定义连接数据库的工具类
为什么要自定义数据库连接的工具类: 在开发中,我们在对数据库进行操作时,必须要先获取数据库的连接,在上一篇随笔中提到的获取数据库连接的步骤为: 1.定义好4个参数并赋值 2.加载驱动类 3.获取数据库 ...
- java.util.Arrays----操作数组的工具类
java.util.Arrays操作数组的工具类,里面定义了很多操作数组的方法 1.boolean equals(int[] a,int[] b):判断两个数组是否相等. 2.String toStr ...
- Rhino+envjs-1.2.js 在java运行网站js 工具类
java爬虫遇到个页面加密的东西,找了些资料学习学习 做了个java运行js的工具类,希望对大家有用,其中用到client(获取js)可以自行换成自己的client.主要是用了 Rhino就是Java ...
- java中常用的工具类(一)
我们java程序员在开发项目的是常常会用到一些工具类.今天我汇总了一下java中常用的工具方法.大家可以在项目中使用.可以收藏!加入IT江湖官方群:383126909 我们一起成长 一.String工 ...
- Java学习-041-颜色工具类(RGB,HEX)
在日常的网页开发中,经常需要进行颜色数值获取.转换,例如获取红色,获取蓝色,获取绿色,RGB转十六进制颜色,十六进制颜色转RGB等,因而在学习过程中,写了一个小工具类,仅供各位小主参考! 多不闲言,直 ...
- JAVA中封装JSONUtils工具类及使用
在JAVA中用json-lib-2.3-jdk15.jar包中提供了JSONObject和JSONArray基类,用于JSON的序列化和反序列化的操作.但是我们更习惯将其进一步封装,达到更好的重用. ...
- Java容器---Arrays & Collections工具类
1.Array & Arrays 与Collection & Collections区别 (1)Collection": 是一个接口,与其子类共同组成一个Collection ...
随机推荐
- Nginx相关快速入门,负载均衡等
快速入门Nginx[正向反向代理,负载均衡的概念,学会Nginx的安装和常用命令,并在实际中去应用Nginx] - 知乎 1.背景介绍:当用户使用较少时,低并发的情况下,使用内部toma ...
- 从嘉手札<2024-1-17>
昨天我以为 人生是一场体验 是一辆不会回头的列车 我们遇到了风景 感悟了风景 放下了风景 构成了自己 今天我以为 静水流深.光而不耀 可多思必多疑 思维是一种极为复杂的东西 我曾经觉得知行合一是对自我 ...
- SOCKS5协议解析
socks的官方文档:https://www.ietf.org/rfc/rfc1928.txt 本文改变其他作者之手,在原文基础上加入客户端的编写,完善了服务端代码,原文是Linux端的程序代码,本文 ...
- 【译】宣布推出适用于 .NET 的 Azure Migrate 应用程序和代码评估工具
原文 | Olia Gavrysh 翻译 | 郑子铭 我们很高兴地宣布发布一款新工具,可以帮助您将本地 .NET 应用程序迁移到 Azure. 适用于 .NET 的 Azure Migrate 应用程 ...
- ABC 312
前三题氵 D 给定一个由 (,?,) 组成的字符串.每个 ? 可以设定为任意括号.求有几种设定方法使得整个是合法括号序列. 套路,dp E 给定 \(n\) 个两两不相交的长方体,对每个长方体,求有多 ...
- NC19996 [HAOI2015]树上染色
题目链接 题目 题目描述 有一棵点数为N的树,树边有边权.给你一个在0~N之内的正整数K,你要在这棵树中选择K个点,将其染成黑色,并将其他的N-K个点染成白色. 将所有点染色后,你会获得黑点两两之间的 ...
- [WPF] 使用Silk.NET绘制D3D9或OpenGL内容并完美解决空域问题。
可扩展渲染控件实现的基本思路(D3D.OpenGL绘制所使用的基类): 首先创建一个抽象类 FramebufferBase,该类主要记录当前控件宽高和图像资源. public abstract cla ...
- 修改文件权限后Git 文件目录被标记为修改
刚打开IDE,工作区的代码状态全部变成修改未提交的状态了?这是这么回事?这是因为Git忽略文件权限或者拥有者改变导致的git状态变化.默认Git会记录文件的权限信息,如果文件的权限信息被修改,在Git ...
- 基于Android的“哲学家就餐问题”防死锁的设计与实现
1问题描述 如图1.1,有5个哲学家围着一个大圆桌就餐.哲学家和筷子都按逆时针顺序编号,每个哲学家的编号与他左边的筷子的编号一致. 规定如下: (1)哲学家之间不相互交流: (2)哲学家只做两件事:吃 ...
- TCP与UDP异同
TCP与UDP异同 TCP/IP模型的运输层有两个不同的协议:UDP用户数据报协议与TCP传输控制协议. 相同点 TCP与UDP都是运行在运输层的协议. TCP与UDP的通信都需要开放端口. 不同点 ...