您好,登錄后才能下訂單哦!
二維數組 |
筆記Notes
|
二維數組的元素是一維數組 二維數組的聲明和初始化 String? [][]?persons; String?persons2[][]; String []?persons3[]; 二維數組的初始化 //靜態初始化 persons?=?new? String[][]{{"小龍哥","110"},{"小倉","119"},{"小強","120"}}; //聲明和初始化不能分開 int[][]?numbers?= {{1,2},{3,4},{5,6}}; //動態初始化 persons2?=?new?String[3][2]; //3值得是二維數組長度,2指的是二維數組元素(一維數組)的長度 //創建一個長度為3的二維數組,二維數組的元素為null persons3?=?new?String[3][]; persons3[0] =?new?String[2]; persons3[1] =?new?String[3]; 獲取二維數組的值,元素的值 ? ? ? ?String?aString?=?persons3[2][2]; ???????int?a?=?persons3.length; int?b?=?persons3[0].length;
//遍歷二維數組 ? ? ? ??for?(int?i?= 0;?i?<?numbers.length;?i++) { ? ? ? ? ? ? ? ??for?(int?j?= 0;?j?<?numbers[i].length;?j++) { ? ? ? ? ? ? ? ? ? ? ? ? System.out.print(numbers[i][j] +?" "); ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? System.out.println(); ? ? ? ? }
使用二維數組打印一個?10?行楊輝三角。 【提示】 1.?第一行有?1?個元素,?第?n?行有?n?個元素 2.?每一行的第一個元素和最后一個元素都是?1 3.?從第三行開始,?對于非第一個元素和最后一個元素的元素。即: yanghui[i][j] =?yanghui[i-1][j-1] +?yanghui[i-1][j]; public?class?YangHui { ????????public?static?void?main(String[]?args) { ????????????????//創建二維數組 ????????????????int[][]?numbers?=?new?int[10][]; ????????????????//給二維數組的元素賦值 ????????????????for?(int?i?= 0;?i?<?numbers.length;?i++) { ????????????????????????//創建二維數組的元素(一維數組) ????????????????????????numbers[i] =?new?int[i?+ 1]; ????????????????????????//給二維數組中的元素的第一個元素和最后一個元素賦值 ????????????????????????numbers[i][0] =?numbers[i][i] = 1; ????????????????????????//遍歷二維數組中的元素(一維數組),不包括第一個和最后一個 ????????????????????????for?(int?j?= 1;?j?<?numbers[i].length?- 1;?j++) { ????????????????????????????????numbers[i][j] =?numbers[i?- 1][j] +?numbers[i?- 1][j?- 1]; ????????????????????????} ????????????????} ????????????????//遍歷二維數組 ????????????????for?(int?i?= 0;?i?<?numbers.length;?i++) { ????????????????????????for?(int?j?= 0;?j?<?numbers[i].length;?j++) { ????????????????????????????????System.out.print(numbers[i][j] +?" "); ????????????????????????} ????????????????????????System.out.println(); ????????????????} ????????} }
?int[]?ns?= {5,2,30,4,1,90}; ? ? ? ? ??int[]?ns2?= {5,2,3,4,1}; ???????????//比較兩個數組是否相等 : 比較的是內容,個數,順序 ??????????boolean?equals?=?Arrays.equals(ns,?ns2); ????????? System.out.println(equals); ?????????? ???????????//輸出數組信息 ????????? String?nsStr?=?Arrays.toString(ns); ????????? System.out.println(nsStr); ?????????? ???????????//將指定的數值填充到數組中 ??????????Arrays.fill(ns, 100); ????????? System.out.println(Arrays.toString(ns)); ?????????? ???????????//對數組中的內容進行排序 ???????????Arrays.sort(ns); ?????????? System.out.println(Arrays.toString(ns)); ?????????? ???????????//二分法查找 - 使用前必須先排序 - 如果找不到會返回負數 ???????????int?index?=?Arrays.binarySearch(ns, 4); ?????????? System.out.println(index);
//1.數組下角標越界 :ArrayIndexOutofBoundsException ????????????????int[]?numbers?=?new?int[2];?//索引值合理范圍 :0 ~ 長度-1 ? ? ? ? ? ? ? ? System.out.println(numbers[2]); //發生了異常 ? ? ? ? ? ? ? ? System.out.println(numbers[-1]); //發生了異常 ????????????????//2.空指針異常 :: NullPointerException ????????????????String?str?=?"aaa"; ????????????????str?=?null; ? ? ? ? ? ? ? ? System.out.println(str.toUpperCase());//發生了異常 ???????????????? ????????????????String[]?names?=?new?String[2]; ? ? ? ? ? ? ? ? System.out.println(names[0].toUpperCase());//發生了異常 ???????????????? ????????????????String[][]?persons?=?new?String[3][]; ? ? ? ? ? ? ? ? System.out.println(persons[0][0]); //發生了異常 ? ? ? ? ? ? ? ? System.out.println(persons[0].length); //發生了異常
聲明:int[]?x,y[];?在給x,y變量賦值以后,以下選項允許通過編譯的是: a )?x[0] = y;? ?//類型不符,x[0]為int類型,而y為引用類型 b)???y[0] = x;? //可以 c)???y[0][0] = x; //類型不否,x為引用類型,而y[0][0]為int類型 d)???x[0][0] = y; //x為一維數組 e)???y[0][0] = x[0];? //可以 f)???x = y;? ?//類型不符,一個是一維數組,一個是二維數組 提示: 一維數組:int[] x?或者int?x[]?? 二維數組:int[][] y?或者?int[] y[]?或者?int?y[][] |
總結Summary |
|
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。