day22java学习打卡:自定义数组的工具类

//自定义数组的工具类:

public class ArrayUtilTest {

public static void main(String[] args) {

ArrayUtil util=new ArrayUtil();

int[] arr=new int[] {12,23,56,76,45,9,-98};

int max=util.getMax(arr);

System.out.println("最大值为:"+max);

// System.out.println("排序前:");

// util.print(arr);

// util.sort(arr);

// System.out.println("排序后:");

// util.print(arr);

System.out.println("查找:");

int index=util.getIndex(arr,5);

if(index>=0) {

System.out.println("找到了,索引地址为:"+index);

}else {

System.out.println("未找到");

}

}

}

public class ArrayUtil {

//求数组的最大值

public int getMax(int[] arr) {

int maxValue=arr[0];

for(int i=1;i<=arr.length-1;i++) {

if(maxValue<arr[i]) {

maxValue=arr[i];

}

}

return maxValue;

}

//求数组的最小值

public int getMin(int[] arr) {

int minValue=arr[0];

for(int i=1;i<=arr.length-1;i++) {

if(minValue>arr[i]) {

minValue=arr[i];

}

}

return minValue;

}

//求数组的总和

public int getSum(int[] arr) {

int sum=arr[0];

for(int i=1;i<=arr.length;i++) {

sum+=arr[i];

}

return sum;

}

//求数组的平均值

public int getAvg(int[] arr) {

return getSum(arr)/arr.length;

}

//反转数组

public void reverse(int[] arr) {

for(int i=0;i<arr.length/2;i++) {

int temp=arr[i];

arr[i]=arr[arr.length-i-1];

arr[arr.length-i-1]=temp;

}

}

//复制数组

public int[] copy(int[] arr) {

int[] arr1=new int[arr.length];

for(int i=0;i<arr.length;i++) {

arr1[i]=arr[i];

}

return arr1;

}

//数组排序

public void sort(int[] arr) {

for(int i=0;i<arr.length;i++) {

for(int j=0;j<arr.length-i-1;j++) {

if(arr[j]>arr[j+1]) {

int temp=arr[j];

arr[j]=arr[j+1];

arr[j+1]=temp;

}

}

}

}

//遍历数组

public void print(int[] arr) {

for(int i=0;i<arr.length;i++) {

System.out.print(arr[i]+"\t");

}

System.out.println();

}

//查找指定元素

public int getIndex(int[] arr,int dest) {

for(int i=0;i<arr.length;i++) {

if(dest==arr[i]) {

return i;

}

}

return -1;//返回负数,表示未找到

}

}

相关推荐
llwszx19 分钟前
深入理解Java锁原理(一):偏向锁的设计原理与性能优化
java·spring··偏向锁
云泽野1 小时前
【Java|集合类】list遍历的6种方式
java·python·list
二进制person1 小时前
Java SE--方法的使用
java·开发语言·算法
OneQ6662 小时前
C++讲解---创建日期类
开发语言·c++·算法
JoJo_Way2 小时前
LeetCode三数之和-js题解
javascript·算法·leetcode
小阳拱白菜2 小时前
java异常学习
java
.30-06Springfield2 小时前
人工智能概念之七:集成学习思想(Bagging、Boosting、Stacking)
人工智能·算法·机器学习·集成学习
FrankYoou3 小时前
Jenkins 与 GitLab CI/CD 的核心对比
java·docker
麦兜*4 小时前
Spring Boot启动优化7板斧(延迟初始化、组件扫描精准打击、JVM参数调优):砍掉70%启动时间的魔鬼实践
java·jvm·spring boot·后端·spring·spring cloud·系统架构
KK溜了溜了4 小时前
JAVA-springboot 整合Redis
java·spring boot·redis