创建一个数组工具类ArrayTool,对常见的对数组操作的方法进行封装:
/*
建立一个用于操作数组的工具类,其中包含着常见的对数组操作的函数如:最值,排序等;
*/
public class ArrayTool {
private ArrayTool(){}//该类中中的方法都是静态的,所以该类是不需要创建对象的。为了保证不让其他程序创建该类对象。
//可以将构造函数初始化
/* 获取整型数据的最大值*/
public static int getMax(int[] arr){
int maxIndex=0;
for(int x=1;x<arr.length;x++){
if(arr[x]>arr[maxIndex])
maxIndex=x;
}
return arr[maxIndex];
}
/*选择排序*/
public static void selectSort(int[] arr){
for(int x=0;x<arr.length;x++){
for(int y=x+1;y<arr.length;y++){
if(arr[x]>arr[y])
swap(arr,x,y);
}
}
}
/*用于给数组元素替换*/
private static void swap(int[] arr,int a,int b){
int temp=arr[a];
arr[a]=arr[b];
arr[b]=temp;
}
/*获取指定元素在数组中的索引*/
public static int getIndex(int[] arr,int key){
for(int x=0;x<arr.length;x++){
if(arr[x]==key)
return x;
}
return -1;
}
/*将int数组转换成字符串。格式是:[e1,e2,...]*/
public static String arrayToString(int[] arr){
String str="[";
for(int x=0;x<arr.length;x++){
if(x!=arr.length-1)
str=str+arr[x]+",";
else
str=str+arr[x]+"]";
}
return str;
}
}
主函数类ArrayToolDemo进行调用:
public class ArrayToolDemo {
/*
函数: 保证程序的独立运行
*/
public static void main(String[] args) {
int[] arr={4,5,2,6,1,9,6};
// ArrayTool tool=new ArrayTool();
// int max=tool.getMax(arr);
int max=ArrayTool.getMax(arr);//工具类方法使用静态修饰后,这里直接用类名调用
System.out.println("max="+max);
int index=ArrayTool.getIndex(arr, 10);
System.out.println("index="+index);
}
}
运行:
image.png
网友评论