1.定義:
int[ ][ ] arr=new int[3][2];
System.out.println(arr); // [[I@e6f7d2([[代表二位數(shù)實體 后面一串為哈希值)
System.out.println(arr[0][0]); // 為0潮太,一維數(shù)組中的元素
System.out.println(arr[0]); // [I@3eoebb ([代表時一維數(shù)組的實體)
int[][] arr = new int[3][];----表示一個包含了三個整型的一維數(shù)組的二維數(shù)組
int[][] array=new int[3][];
//明確了二維碼長度,沒明確具體的一維數(shù)組
System.out.println(array);// [[3eOebb
System.out.println(array[0])臼膏;// null
System.out.println(array[0][0])屋彪;// NullPointerException
4.二維數(shù)組長度:arr.length
二維數(shù)組中一維數(shù)組的長度:arr[1].length
5.二維數(shù)組的另一種表達(dá)方式:
int[ ] arr ={{23,32,42},{33},{42,00}};
二維數(shù)組的應(yīng)用:容器中存容器齿坷,如坐標(biāo)值
1555821793(1).png
從控制臺輸入行數(shù)厦坛,打印對應(yīng)的楊輝三角:
//從控制臺獲取行數(shù)
Scanner s = new Scanner(System.in);
int row = s.nextInt();
//根據(jù)行數(shù)定義好二維數(shù)組桦锄,由于每一行的元素個數(shù)不同,所以不定義每一行的個數(shù)
int[][] arr = new int[row][];
//遍歷二維數(shù)組
for(int i = 0; i < row; i++){
//初始化每一行的這個一維數(shù)組
arr[i] = new int[i + 1];
//遍歷這個一維數(shù)組抠忘,添加元素
for(int j = 0; j <= i; j++){
//每一列的開頭和結(jié)尾元素為1撩炊,開頭的時候,j=0崎脉,結(jié)尾的時候拧咳,j=i
if(j == 0 || j == i){
arr[i][j] = 1;
} else {//每一個元素是它上一行的元素和斜對角元素之和
arr[i][j] = arr[i -1][j] + arr[i - 1][j - 1];
}
System.out.print(arr[i][j] + "\t");
}
System.out.println();
}
8.java中的二分查找法(也可用于插入位置查找):
Arrays.binarySerrch(arr,10);
Arrays類的binarySearch()方法,可以使用二分搜索法來搜索指定的數(shù)組囚灼,以獲得指定對象骆膝。該方法返回要搜索元素的索引值。binarySearch()方法提供多種重載形式灶体,用于滿足各種類型數(shù)組的查找需要阅签。