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 ...
随机推荐
- 超级好用的elementui动态循环菜单
<template> <div> <el-menu @select="selectMenu" :default-active="curren ...
- TienChin 引入 MyBatisPlus
在父工程当中添加版本号,统一管理: <mybatis-plus.version>3.5.1</mybatis-plus.version> 在父工程当中添加 MyBatisPlu ...
- go中的类型转换成interface之后如何复原
go中interface转换成原来的类型 首先了解下interface 什么是interface? 如何判断interface变量存储的是哪种类型 fmt 反射 断言 来看下interface的底层源 ...
- Win32汇编:算数运算指令总结
整理复习汇编语言的知识点,以前在学习<Intel汇编语言程序设计 - 第五版>时没有很认真的整理笔记,主要因为当时是以学习理解为目的没有整理的很详细,这次是我第三次阅读此书,每一次阅读都会 ...
- C# 中类与继承等概念
C#是一种现代的.面向对象的编程语言,其中类和继承是面向对象编程语言中非常重要的概念,类和继承是C#中面向对象编程的基本概念,可以用于创建复杂的应用程序和模块,而多态和接口可以使程序更加灵活和可扩展. ...
- RabbitMQ高级知识(消息可靠性,死信交换机,惰性队列,MQ集群)
服务异步通信-高级篇 消息队列在使用过程中,面临着很多实际问题需要思考: 1.消息可靠性 消息从发送,到消费者接收,会经历多个过程: 其中的每一步都可能导致消息丢失,常见的丢失原因包括: 发送时丢失: ...
- Visual Studio 2022 企业版 离线包 下载
今天安装了Visual Studio 2022 企业版工具,觉得改进还是有一定的,下面提供下载及序列号: 链接:https://pan.baidu.com/s/1qvzg8WtsgaCxrD3M4Y0 ...
- Git 简明教程(一)
版本控制工具,早期的vss tfs svn等,这些应该是老一辈程序员常用的工具.目前 git 已经在版本控制领域占主流的地位,因为国外的github 和国内的码云 gitee 均用的是git. git ...
- Qt processEvents - 解决线程中事件阻塞(如槽函数被阻塞)
百度了一会,发现没太有文字讲这件事情,因此整理成文字记录一下. processEvents介绍 长时间运行的操作可以调用processEvents() 保持应用程序响应能力. void QCoreAp ...
- Linux中单引号和双引号的区别
区别:单引号属于强引用,它会忽略所有被引起来的字符的特殊处理,被引用起来的字符会被原封不动的使用:而双引号属于弱引用,它会对一些被引起来的字符进行特殊处理.简单来说,单引号直接输出内部字符串,不解析特 ...