java多維數組的使用
/**
* 測試多維數組 即在數組的元素中存放數組
*/
public class Test7 {
? ?public static void main(String[] args) {
? ? ? ?//多維數組的默認初始化方式
? ? ? ?int[][] a = new int[3][];
? ? ? ?//二維數組兩個[] 定義時第一個[]內寫一維的空間 第二個[]空
? ? ? ?//定義后數組的第一維a[3]={null,null,null}
? ? ? ?a[0] = new int[2];
? ? ? ?a[1] = new int[3];
? ? ? ?a[2] = new int[4];
? ? ? ?//分別定義第二維數組
? ? ? ?//如果第二維數組空間一樣大也可以new int[3][x]一起定義
? ? ? ?//多維數組靜態(tài)初始化
? ? ? ?int[][] b = {{1,2,3},{4,5},{6,7,8}};
? ? ? ?//定義了第一維長度3,第二維分別為{1,2,3} {4,5} {6,7,8}
? ? ? ?//多維數組動態(tài)初始化
? ? ? ?int[][] c = new int[3][];
? ? ? ?c[0] = new int[]{1,2,3};
? ? ? ?//int[]代表第一維 {}的內容賦值給第二維
? ? ? ?//c[0] = {1,2,3}是錯誤的 格式要求必須聲明第二維的類型new int[]
? ? ? ?c[1] = new int[]{4,5};
? ? ? ?//格式 c[x] = new int[]{x,x,x}
? ? ? ?c[2] = new int[]{6,7,8};
? ? ? ?//可以分別new int[x]分別for循環(huán)賦值
? ? ? ?System.out.println(c.length+"打印第一維數組的長度");
? ? ? ?System.out.println(c[1].length+"打印第二維數組的長度");
? ? ? ?Object[] o0 = {01,"張三",18,"無","1990-1-1"};
? ? ? ?//一切對象都屬于Object類 用Object[]數組可以放多種類型的內容
? ? ? ?//數字01 18屬于基本數據類型 通過包裝類變?yōu)閷ο蠊㎡bject[]數組使用
? ? ? ?Object[] o1 = {02,"李四",19,"有","1991-2-2"};
? ? ? ?Object[] o2 = {03,"王五",20,"無","1993-3-3"};
? ? ? ?Object[][] o = new Object[3][];
? ? ? ?o[0] = o0;
? ? ? ?o[1] = o1;
? ? ? ?o[2] = o2;
? ? ? ?//通過二維數組 存儲表格數據
? ? ? ?for(int i = 0;i<o.length;i++){
? ? ? ? ? ?//.length 數組的長度 for循環(huán)遍歷
? ? ? ? ? ?System.out.println(Arrays.toString(o[i]));
? ? ? ?}
? ? ? ?for(Object[] j:o){
? ? ? ? ? ?//for-each遍歷
? ? ? ? ? ?System.out.println(Arrays.toString(j));
? ? ? ?}
? ? ? ?for(int i = 0;i<o.length;i++){
? ? ? ? ? ?//用嵌套循環(huán)打印
? ? ? ? ? ?System.out.print("[");
? ? ? ? ? ?for (int j =0;j<o[i].length;j++){
? ? ? ? ? ? ? ?System.out.print(o[i][j]+(j==o[i].length-1?"]\n":", "));
? ? ? ? ? ?}
? ? ? ?}
? ? ? ?for(int i = 0;i<o.length;i++){
? ? ? ? ? ?//查找大于等于19歲 打印
? ? ? ? ? ?if ((int)(o[i][2])<19)continue;
? ? ? ? ? ?//o是Object數組 所有元素都為Object 數字19不是Object 比較需要強制轉換
? ? ? ? ? ?System.out.print("[");
? ? ? ? ? ?for (int j =0;j<o[i].length;j++){
? ? ? ? ? ? ? ?System.out.print(o[i][j]+(j==o[i].length-1?"]\n":", "));
? ? ? ? ? ?}
? ? ? ?}
? ?}
}