1. 陣列的三種宣告方式
public class WhatEver { public static void main(String[] args) { //第一種 例: String[] test1 = new String[6]; test1[0] = "陣列0"; test1[1] = "陣列1"; //第二種 例: String[] test2 = {"陣列0","陣列1","陣列2","...."}; //第三種 例: String[] test3 = new String[]{"陣列0","陣列1","陣列2","...."}; } }
2.多維陣列的遍歷
//二維陣列 public class Test1 { public static void main(String[] args) { int[] score1=new int[10]; int[][] score2; String[][] names; //二維陣列的初始化 score2=new int[][]{{1,2,3},{3,4,5,6},{16,7}};//靜態初始化 names=new String[6][5];//動態初始化方式一 names=new String[6][];//動態初始化方式二,一定要設定行數 names[0]=new String[5];//第一行中有5個元素 names[1]=new String[4]; names[2]=new String[7]; names[3]=new String[5]; names[4]=new String[8]; names[5]=new String[5]; System.out.println("第一行中的元素:"+names[1].length); System.out.println(names.length);//列印的是二維陣列有幾行 //如何遍歷二維陣列 for(int m=0;m<score2.length;m++){//控制行數 for(int n=0;n<score2[m].length;n++){//一行中有多少個元素(即多少列) System.out.print(score2[m][n]+" "); } System.out.println(); } } }
3.Arrays類的常用方法總結
3.1 asList()方法
1 @SafeVarargs 2 public static <T> List<T> asList(T... a) { 3 return new ArrayList<>(a); 4 }
使用該方法可以返回一個固定大小的List,如:
1 List<String> stringList = Arrays.asList("Welcome", "To", "Java", 2 "World!"); 3 4 List<Integer> intList = Arrays.asList(1, 2, 3, 4);
3.2 copyOf()及copyOfRange方法
1 String[] names2 = { "Eric", "John", "Alan", "Liz" }; 2 3 4 //[Eric, John, Alan] 5 String[] copy = Arrays.copyOf(names2, 3); 6 7 //[Alan, Liz] 8 String[] rangeCopy = Arrays.copyOfRange(names2, 2, 9 names2.length);
3.3 sort()方法
1 String[] names = { "Liz", "John", "Eric", "Alan" }; 2 //只排序前兩個 3 //[John, Liz, Eric, Alan] 4 Arrays.sort(names, 0, 2); 5 //全部排序 6 //[Alan, Eric, John, Liz] 7 Arrays.sort(names);
另外,Arrays的sort方法也可以結合比較器,完成更加複雜的排序。
1 public static <T> void sort(T[] a, Comparator<? super T> c) { 2 if (LegacyMergeSort.userRequested) 3 legacyMergeSort(a, c); 4 else 5 TimSort.sort(a, c); 6 }
3.4 toString()方法
Arrays的toString方法可以方便我們列印出陣列內容。
如:
String[] names = { "Liz", "John", "Eric", "Alan" }; Arrays.sort(names); System.out.println(Arrays.toString(names));
控制檯將列印出 [Alan, Eric, John, Liz]