1. java二維數組如何使用
二維數組,也可以理解為用一維數組保存的元素為一維數組。對於三維數組,等等,都可以這樣劃分。不過我們在編程中使用三維以上的數組比較少。因為那樣使用起來非常不方便。下面我們來學習二維數組的聲明。其聲明同一位數組一樣,可以先聲明再分配內存,也可以聲明時分配內存。
二維數組的聲明及內存分配
第一種,先聲明再分配內存的方式
數組聲明: 數據類型 數組名[][];
內存分配: 數組名 = new 數據類型[行的個數][列的個數];
舉例: 假如我們需要統計一個象棋上放的是黑棋還是白棋。這時,我們可以建立一個坐標,即以象棋盤的兩邊建立坐標軸。這時,我們可以這樣定義這個二維數組:
聲明數組: int Chess[][];
內存分配 Chess= new int[64][64];
第二種,即聲明時即分配內存的方式。
使用格式是: 數據類型 數組名[][] =new 數據類型 [行的個數][列的個數];
使用上個步驟中的例子,我們可以將數組的聲明和分配內存寫成以下方式:
聲明即分配內存:int Chess[][] = new int[64][64];
二維數組的賦值
二維數組的賦值,同一維數組類似。只是在{}中的每個元素又是每個一維數組。如下格式:
數據類型 數據名[][]={
{值1,值2,值3,值4 }, //第一行數據
{值5,值6,值7,值8}, //第二行數據
...,
}
二維數組中,可以有列數不相等的數組。即每一行的列數不同時。我們需要對每一行進行賦值。
對於這兩種二維數組。我們分別來進行分別舉例進行賦值。第一種是:列數相同的數組
其賦值格式如下:
String ClassRoom[][]={
{"小王","小李","小張"},
{"小紅","小明","小花"},
}
即第一行的人數和第二行的人數相同。
第二種:即列數不相等的數組的賦值格式如下:
String ClassRoom[][]={
{"小王","小李","小張"},
{"小紅","小明","小花"},
{"小雨","小風","小平","小雷"},
{"小單"}
}
看上述例子。對於不同的行,其相應的列數是不同的。
二維數組元素的輸入輸出
二維數組元元素的訪問及輸出同一維數組一樣,只是多了一個下標而已。在循環輸出時,需要裡面再內嵌一個循環,即雙重循環來輸出二維數組中的每一個元素。下面,我們來展示一個例子,把上面學過的知識來一塊使用。這里使用列數不相等的二維數組:
例子是輸出二維數組中的每一行的數字。
2. java高手:java定義二維數組問題
int a[][] = new int[3][2]; 表示定義一個三行二列的二維數組,但是a[0] = {1,6}; 是對一維數組進行賦值,而a是二維數組無法使用一維數組的賦值方法,所以程序會報錯。
該代碼的正確方法應該是:
int a[][] = new int[3][2];
a[0][0]=1;
a[0][1]=6;
(2)創建二維數組java擴展閱讀
java定義二維數組的方法:
1、動態初始化
數據類型 數組名 [ ][ ] = new 數據類型[m][n]
數據類型 [ ][ ] 數組名 = new 數據類型[m][n]
數據類型 [ ] 數組名 [ ] = new 數據類型[m][n]
舉例:int [ ][ ] arr=new int [5][3]; 也可以理解為「5行3例」
2、 靜態初始化
數據類型 [ ][ ] 數組名 = {{元素1,元素2....},{元素1,元素2....},{元素1,元素2....}.....};
舉例:int [ ][ ] arr={{22,15,32,20,18},{12,21,25,19,33},{14,58,34,24,66},}
3. Java動態二維數組 怎麼動態定義
有兩種實現方法:
可以用List數組來實現
可以用map來實現
方法一:用map來實現
比如要創建一個1行、3列的數組,實現方法如下:
public static void main(String[] args) throws CloneNotSupportedException {
Map<Double, List<Double>> myMap = create(1, 3);
}
public static Map<Double, List<Double>> create(double row, double column) {
Map<Double, List<Double>> doubleMap = new HashMap<Double, List<Double>>();
for (double x = 0; x < row; x++) {
for (double y = 0; y < column; y++) {
doubleMap.put(x, new ArrayList<Double>());
}
}
return doubleMap;
}
方法二:
可以用List數組來實現
publicstaticvoidmain(Stringargs[]){
//list作為動態二維數組
List<List<String>>list=newArrayList();
List<String>a1=newArrayList<String>();
List<String>a2=newArrayList<String>();
List<String>a3=newArrayList<String>();
list.add(a1);
list.add(a2);
list.add(a3);
a1.add("string1ina1");
a1.add("string2ina1");
a2.add("string1ina2");
a3.add("string1ina3");
a3.add("string2ina3");
for(inti=0;i<list.size();++i){
for(intj=0;j<list.get(i).size();++j)
System.out.println(list.get(i).get(j));
}
}
4. JAVA中如何創建一個二維數組,然後給二維數組賦值!
1、一維數組,可以理解為只能存放一行相同數據類型的數據。在Java中如果要使用數組,需要先聲明數組,然後再分配數組內存(即,可以存放多少個數據)。聲明數組格式: 數據類型 數組名[]; //聲明一維數組,分配內存格式:數組名 = new 數據類型[個數]; //分配內存給數組。x0dx0a2、數據類型在之前的經驗里已經講過。數組名,也同標識符一樣,其命名規則還需要滿足那三條規則。對於編程人員來說。命名數組名,盡量使用有意義的英文單詞,養成良好的編程習慣。例如命名一組學生的身高的數組:聲明數組:int Height[];分配內存:Height = new int[40];//有40個學生。x0dx0a拓展資料:x0dx0a1、簡介x0dx0a編程是編寫程序的中文簡稱,就是讓計算機代為解決某個問題,對某個計算體系規定一乎嫌定的運算方式,是計算體系按照該計算方式運行,並最終得到相應結果的過程。x0dx0a為敗散了使計算機能夠理解人的意圖,人類就必須將需解決的問題的思路、方法和手段通過計算機能夠理解的形式告訴計算機,使得計算機能夠根據人的指令一步一步去工作,完成某種特定的任務。這種人和計算體系之間交流的過程就是編程。x0dx0a2、匯編程序x0dx0a匯編程序。使用匯編語言編寫計算機程序,程序員仍然需要十分熟悉計算機系統的硬體結構,所以從程序設計本身上來看仍然是低效察頃氏率的、繁瑣的。但正是由於匯編語言與計算機硬體系統關系密切,在某些特定的場合,如對時空效率要求很高的系統核心程序以及實時控製程序等,迄今為止匯編語言仍然是十分有效的程序設計工具。x0dx0a3、執行原理x0dx0a計算機對除機器語言以外的源程序不能直接識別、理解和執行,都必須通過某種方式轉換為計算機能夠直接執行的。這種將高級編程硬體程序設計語言編寫的源程序轉換到機器目標程序的方式有兩種:解釋方式和編譯方式。