>[success] # 二維數組
* 二維數組本質上就是由多個一維數組摞在一起組成的數組,二維數組中 的每個元素都是一維數組,而一維數組中的每個元素才是數據內容,即`外層一維數組為行,內存的一維數組為列`
* 二維數組的聲明
* * `數據類型[][] 數組名稱 = new 數據類型[行數][列數];`
* * `數據類型[][] 數組名稱 = {{元素1, 元素2,...}, ...};`
* 二維數組只聲明行不聲明列
~~~
public class ArrayArrayTest {
public static void main(String[] args) {
// 先聲明行
int[][] ls = new int[2][];
// 后聲明列
ls[0] = new int[5];
ls[1] = new int[4];
}
}
~~~
>[danger] ##### 二維數組聲明
* 聲明一個兩行兩列數組
~~~
[
[0, 0],
[0, 0]
]
~~~
~~~
public class ArrayArrayTest {
public static void main(String[] args) {
int[][] ls = new int[2][2]; // [[0, 0],[0, 0]]
int[][] ls1 = { { 0, 0 }, { 0, 0 } };
}
}
~~~
>[danger] ##### 賦值并打印
~~~
public class ArrayArrayTest {
public static void main(String[] args) {
int[][] ls = new int[2][2];
int count = 0;
for (int i = 0; i < ls.length; i++) {
for (int j = 0; j < ls[i].length; j++) {
ls[i][j] = count++;
}
}
// [[0, 1],[2, 3]]
for (int i = 0; i < ls.length; i++) {
for (int j = 0; j < ls[i].length; j++) {
System.out.print(ls[i][j] + " "); // 0 1 2 3
}
}
}
}
~~~
>[danger] ##### 楊輝三角形
~~~
/*
編程使用二維數組來實現楊輝三角的生成和遍歷
*/
import java.util.Scanner;
public class ArrayArrayTriangleTest {
public static void main(String[] args) {
// 1.提示用戶輸入一個行數并使用變量記錄
System.out.println("請輸入一個行數:");
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
// 2.根據用戶輸入的行數來聲明對應的二維數組
int[][] arr = new int[num][];
// 3.針對二維數組中的每個元素進行初始化,使用雙重for循環
// 使用外層for循環控制二維數組的行下標
for(int i = 0; i < num; i++) {
// 針對二維數組中的每一行進行內存空間的申請
arr[i] = new int[i+1];
// 使用內層for循環控制二維數組的列下標
for(int j = 0; j <= i; j++) {
// 當列下標為0或者列下標與當前行的行下標相等時,則對應位置的元素就是1
if(0 == j || i == j) {
arr[i][j] = 1;
} else {
// 否則對應位置的元素就是上一行當前列的元素加上上一行前一列的元素
arr[i][j] = arr[i-1][j] + arr[i-1][j-1];
}
}
}
// 4.打印最終生成的結果
for(int i = 0; i < num; i++) {
for(int j = 0; j <= i; j++) {
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
}
}
~~~
- windows -- 環境變量
- Vscode -- 編寫java
- 初始java
- java -- 關鍵字
- 編寫第一個java程序
- java -- 注釋
- 計算機存儲 -- 進制
- java -- 類型
- java -- 變量
- 數字類型
- 布爾類型
- 字符類型
- 類型轉換
- 雙等比較是什么
- java -- 運算符
- 算數運算符
- 字符串拼接
- 關系/比較運算符
- 自增減運算符
- 邏輯運算符
- 三目運算
- 賦值運算符
- 移位運算符
- 位運算符
- 運算符優先級
- java -- 流程控制語句
- if /else if /if -- 判斷
- switch case分支結構
- for -- 循環
- 用雙重for循環
- while -- 循環
- do while -- 循環
- 案例練習
- java -- 數組
- 數組的存儲
- 數組的增刪改查
- 數組的特點
- 數組案例
- 二維數組
- 數組的工具方法
- java -- 方法
- java -- 方法的重載
- java -- 方法的調用流程
- java -- 類方法傳參注意事項
- java -- 方法練習案例
- 對比 return break continue
- for each循環
- java -- 基礎練習
- java -- 面向對象
- java -- 創建類和對象
- java -- 訪問控制符
- java -- 類成員方法
- java -- 構造方法
- java -- this
- java -- 封裝
- java -- 對象內存圖
- java -- 創建對象案例
- java -- static
- java -- 繼承
- super -- 關鍵字
- java -- 構造塊和靜態代碼塊
- java -- 重寫
- java -- final
- java -- 多態
- java -- 抽象類
- java -- 接口
- 引用類型數據轉換
- 綜合案例
- java -- 內部類
- java -- 回調模式
- java -- 枚舉類型
- java -- switch 使用枚舉
- java -- 枚舉方法使用
- java -- 枚舉類實現接口
- java -- javaBean
- java -- package 包
- java -- import
- java -- 遞歸練習
- java -- 設計模式
- 單例模式
- java -- 注解
- java -- 元注解
- Java -- 核心類庫
- java -- 處理字符串
- Java -- String
- String -- 常用方法
- String -- 正則
- Java -- StringBuilder 和 StringBuffer
- 知識點
- Java -- StringJoiner 字符串拼接
- 練習題
- 字符串的總結
- Java -- 包裝類
- Integer
- Double
- Boolean
- Character
- java -- 集合類
- java -- util.Collection
- Iterator接口
- java -- util.List
- java -- ArrayList
- java -- util.Queue
- java -- util.Set
- java -- util.Map
- java -- util.Collections
- Java -- Math
- Java -- java.lang
- Java -- Object
- Java -- 獲取當前時間戳
- Java -- 異常
- Java -- java.util
- java -- Date
- java -- Calender
- Java -- java.text
- Java -- SimpleDateFormat
- Java -- java.time
- Java -- java.io
- java -- io.File
- java -- 泛型
- IDEA -- 用法