1.方法类
package com.atguigu.java.day09;
/*
把方法和调用分开来写
*/
/**
* @author lenovo
* @version 1.0
* @project JavaSE
* @description ArrayUtil
* @date 2022/10/9 17:17:10
*/
public class ArrayUtil {
//求数组最大值
public int getMax(int []arr){
int maxValue = arr[0];
for(int i=1;i<arr.length;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;i++){
if(minValue>arr[i]){
minValue=arr[i];
}
}
return minValue;
}
//求数组的总和
public int getSum(int []arr){
int sum=0;
for(int i=0;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;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<arr1.length;i++) {
arr1[i] = arr[i];
}
return arr1;
}
//数组排序
public void sort(int []arr){
//冒泡排序
for(int i=0;i<arr.length-1;i++){
for(int j=0;j<arr.length-1-i;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]){
// System.out.println("找到了指定的元素,位置为:"+i);
return i;
}
}
return -1;//返回一个复数表示没有找到。
}
}
2.主类调用
package com.atguigu.java.day09;
import java.lang.reflect.Array;
/**
* @author lenovo
* @version 1.0
* @project JavaSE
* @description 自定义数组的工具类
* @date 2022/10/9 17:16:20
*/
public class ArrayUtilTest {
public static void main(String[] args) {
ArrayUtil util=new ArrayUtil();
int []arr=new int[]{32,34,32,5,3,54,654,-98,0,-53,5};
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("未找到");
}
}
}
3.总结
方法类、主类分开写,简洁。