定义一个数组工具【ArrayTool】封装其方法,ArrayDemo调用数组工具
ArrayTool
package new_Object; //封装多个个功能 class ArrayTool{ //1==>获取最值 public static int getMax(int []Arr){ int maxIndex=Arr[0]; for (int i = 1; i < Arr.length; i++) { if (Arr[i]>Arr[maxIndex]){ maxIndex=Arr[i]; } } return Arr[maxIndex]; } //2==>求角标 public static int getIndex(int []Arr,int key){ for (int i = 0; i < Arr.length; i++) { if (Arr[i]==key) { return i; } } return -1;//没找到 } //3,==>乘法表 public static void printfCFB(){ for (int i = 1; i <=9; i++) { for (int j = 1; j <=i; j++) { System.out.print(i+"*"+j+"="+i*j+"\t"); } System.out.println(); } } //4,==>选择排序 //打印数组 public static void Printf_Arr(int []Arr){ System.out.print(""); for (int i = 0; i < Arr.length; i++) { if (i!=Arr.length-1) { System.out.print(Arr[i]+"、"); }else System.out.println(Arr[i]+""); } } public static void select_Sort(int []Arr){ for (int i = 0; i < Arr.length-1; i++) { for (int j = i+1; j < Arr.length; j++) { /*条件Arr[i]>Arr[j]==>Arr[i]<Arr[j] 则是从大到小排序*/ if (Arr[i]>Arr[j]) swap(Arr ,i,j); } } } //swap封装置换数值 private static void swap(int []Arr,int a,int b){ int temp=Arr[a]; Arr[a]=Arr[b]; Arr[b]=temp; } //5,==>遍历数组 public static void show(int Arr[]){ for (int i = 0; i < Arr.length; i++) { System.out.println("Arr["+i+"]="+Arr[i]); } } }
ArrayDemo调用ArrayTool
package new_Object; //方法封装成对象 public class ArrayToolDemo{ public static void main(String[] args) { int []Arr={1,2,4,6,8}; //static修饰的成员可直接被类名所调用==>类名.静态成员 int max=ArrayTool.getMax(Arr); System.out.println("max="+max); System.out.println("--------------------"); int getIndex=ArrayTool.getIndex(Arr,8); System.out.println("getIndex="+getIndex); System.out.println("--------------------"); ArrayTool.printfCFB(); System.out.println("--------------------"); System.out.print("排序前:"); ArrayTool.Printf_Arr(Arr); ArrayTool.select_Sort(Arr);//调用排序方法 System.out.print("排序后:"); ArrayTool.Printf_Arr(Arr); System.out.println("--------------------"); ArrayTool.show(Arr); } }
==========================run===========================
max=8
--------------------
getIndex=4
--------------------
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
--------------------
排序前:1、2、4、6、8
排序后:1、2、4、6、8
--------------------
Arr[0]=1
Arr[1]=2
Arr[2]=4
Arr[3]=6
Arr[4]=8
由此例子更进一步理解封装