java語言求陣列最大值、最小值、總和,列印,翻轉、擷取等操作
阿新 • • 發佈:2018-12-21
//Java陣列章節練習題 public class ArrayUtils{ //1.計算陣列中最大值 public static int arrayMaxElement(int[] data){ int max=data[0]; for(int i=0;i<data.length;i++){ if(max<data[i]){ max=data[i]; } } System.out.println("最大值為:"+max); return max; } //2.計算陣列中最小值 public static int arrayMinElement(int[] data){ int min=data[0]; for(int i=0;i<data.length;i++){ if(min>data[i]){ min=data[i]; } } System.out.println("最小值為:"+min); return min; } //3.計算陣列值之和 public static int arrayElementSum(int[] data){ int sum=0; for(int i=0;i<data.length;i++){ sum+=data[i]; } System.out.println("陣列總和為:"+sum); return sum; } //4.陣列拼接 public static int[] arrayJoin(int[] a, int[] b){ //TODO int[] c=new int[a.length+b.length]; for(int i=0;i<a.length;i++){ c[i]=a[i]; } for(int j=a.length;j<c.length;j++){ c[j]=b[j-a.length]; } for(int n=0;n<c.length;n++){ System.out.print(c[n]+" "); } return null; } //5.陣列擷取 //[start, end) public static int[] arraySub(int[] data, int start , int end){ if(start>end){ System.out.print("陣列越界!"); return null; } if(start<0&&end<data.length){ start=0; }else if(start>=0&&end>=data.length){ end=data.length-1; } while(start<end){ System.out.print(data[start]+" "); start++; } System.out.print(data[end]); return null; } //6.陣列列印 public static int printArray(int[] data){ for(int i=0;i<data.length;i++){ System.out.print(data[i]+" "); } return 0; } //7.陣列反轉 // 比如:[1,2,3,4] => [4,3,2,1] public static void printReversal(int[] data){ int start=0; int end=data.length-1; while(start<end){ data[start]^=data[end]; data[end]^=data[start]; data[start]^=data[end]; start++; end--; } } public static void main(String[] args){ int[] Array=new int[]{1,4,2,5,33,51,12}; int[] Array2=new int[]{6,45,23,12}; //1.計算陣列最大值 arrayMaxElement(Array); //2.計算陣列最小值 arrayMinElement(Array); //3.計算陣列總和 arrayElementSum(Array); //陣列拼接 System.out.println("拼接後的陣列為:"); arrayJoin(Array,Array2); System.out.println(); //陣列翻轉 System.out.print("翻轉後的陣列為:"); printReversal(Array); System.out.println(); //列印陣列 printArray(Array); System.out.println(); //擷取後的陣列為 System.out.println("擷取後的陣列為:"); arraySub(Array,-1,5); } }