由淺入深快速掌握J(rèn)ava?數(shù)組的使用
1.數(shù)組定義格式
1.1 數(shù)組概述
* 一次性聲明大量的用于存儲數(shù)據(jù)的變量
* 要存儲的數(shù)據(jù)通常都是同類型數(shù)據(jù)。
1.2 什么是數(shù)組
數(shù)組(array)是一個存儲多個相同類型數(shù)據(jù)的存儲模型
1.3 數(shù)組的定義格式:
格式1:數(shù)據(jù)類型[ ] 變量名
范例: int[ ] arr
定義了一個int類型的數(shù)組,數(shù)組名是arr
格式2:數(shù)據(jù)類型 變量名[ ]
范例: int arr[ ]
定義了一個int類型的變量,變量名是arr數(shù)組
2.數(shù)組初始化之動態(tài)初始化
2.1 數(shù)組初始化概述
java中的數(shù)組必須先初始化,然后才能使用
所謂初始化:就是為數(shù)組中的數(shù)組元素分配內(nèi)存空間,并為每個元素賦值
2.2 數(shù)組初始化方法
動態(tài)初始化
動態(tài)初始化:初始化時只指定數(shù)組長度,由系統(tǒng)為數(shù)組分配初始值
格式:
數(shù)組類型[ ] 變量名 = new 數(shù)據(jù)類型[數(shù)組長度];
范例:
int[ ] arr = new int[3];
示例代碼:
int [] arr = new int[3]; /* * 左邊: * int:說明數(shù)組中的元素是int類型 * []:說明這是一個數(shù)組 * arr:這是一個數(shù)組的名稱 * 右邊: * new:為數(shù)組申請內(nèi)存空間 * int:說明數(shù)組中元素類型是int類型 * []:說明這是一個數(shù)組 * 3:數(shù)組長度,其實就是數(shù)組中元素個數(shù) * */
3.數(shù)組元素訪問
3.1 數(shù)組元素訪問
* 數(shù)組變量訪問方式
* 格式:
數(shù)組名
* 數(shù)組內(nèi)部保存數(shù)據(jù)的訪問方式
* 格式:
數(shù)組名[索引]
* 索引是數(shù)組中數(shù)據(jù)的編號方式
* 作用:索引用于訪問數(shù)組中的數(shù)據(jù)使用,數(shù)組名[索引]等同于變量名,是一種特殊的變量名
* 特征:索引是從0開始,是連續(xù)的,是逐一增加每次加1的。
//輸出數(shù)組名 System.out.println(arr);//[I@dcf3e99 //輸出數(shù)組中的元素 System.out.println(arr[0]); System.out.println(arr[1]); System.out.println(arr[2]);
4.內(nèi)存分配
4.1 java中的內(nèi)存分配

棧內(nèi)存:存儲局部空間
堆內(nèi)存:存儲new出來的內(nèi)容(實體,對象)
4.2 數(shù)組內(nèi)存圖(單個數(shù)組)
//輸出數(shù)組名 System.out.println(arr);//[I@dcf3e99 //輸出數(shù)組中的元素 System.out.println(arr[0]); System.out.println(arr[1]); System.out.println(arr[2]); //給數(shù)組中的元素賦值 arr[0]=10; arr[2]=100; //輸出數(shù)組中的元素 System.out.println(arr); System.out.println(arr[0]); System.out.println(arr[1]); System.out.println(arr[2]);
控制臺輸出結(jié)果:

4.3 多個數(shù)組內(nèi)存圖

5.數(shù)組初始化之靜態(tài)初始化
靜態(tài)初始化: 初始化時指定每個元素的初始值,由系統(tǒng)決定數(shù)組長度
格式:
數(shù)據(jù)類型[ ] 變量名 = new 數(shù)據(jù)類型[ ] {數(shù)據(jù)1, 數(shù)據(jù)2, 數(shù)據(jù)3....};
范例:
int [ ] arr = new int [ ]{1,2,3};
簡化格式:
數(shù)據(jù)類型 [ ] 變量名 = {數(shù)據(jù)1,數(shù)據(jù)2,數(shù)據(jù)3....};
范例:
int[ ] 變量名 = {1,2,3};
示例代碼:
int [] arr = {1,2,3};
//輸出數(shù)組名
System.out.println(arr);//[I@dcf3e99
//輸出數(shù)組中的元素
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);6.數(shù)組操作的兩個常見小問題
1. 索引越界:訪問了數(shù)組中不存在的索引對應(yīng)的元素,造成索引越界問題
int[ ] arr = new int [3];
system out.println(arr[3]);
2.空指針異常:訪問的數(shù)組已經(jīng)不在指向堆內(nèi)存的數(shù)據(jù),造成空指針異常
int[ ] arr = new int [3];
system out.println(arr[2]);
arr = null;
system out.println(arr[0]);
3.null:空值,引用數(shù)據(jù)類型默認(rèn)值,表示不指向任何有效對象
7.數(shù)組常見操作
7.1 遍歷
通用格式
int []arr={...};
for(int x=0;x<arr.length;x++){
arr[x]; //對arr[x]進(jìn)行操作
}7.2 獲取數(shù)組元素個數(shù)
格式:
數(shù)組名.length
范例:
arr.length
7.3 獲取最值
示例代碼:
public static void main(String[] args) {
// TODO Auto-generated method stub
//定義數(shù)組
int []arr={15,66,75,42,85,45,87,99,10};
//定義一個變量,用于保存最大值
//取數(shù)組中第一個數(shù)據(jù)作為變量初始值
int max= arr[0];
//與數(shù)組中剩余元素逐個比對,并將最大值保存在變量中
for(int x=0;x<arr.length;x++){
if(arr[x]>max){
max=arr[x];
}
}
//循環(huán)結(jié)束后在控制臺打印變量值
System.out.println("max:"+max);
}到此這篇關(guān)于由淺入深快速掌握J(rèn)ava 數(shù)組的使用的文章就介紹到這了,更多相關(guān)Java 數(shù)組內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Springboot與Maven多環(huán)境配置的解決方案
多環(huán)境配置的解決方案有很多,我看到不少項目的多環(huán)境配置都是使用Maven來實現(xiàn)的,本文就實現(xiàn)Springboot與Maven多環(huán)境配置,感興趣的可以了解下2021-06-06
Socket+JDBC+IO實現(xiàn)Java文件上傳下載器DEMO詳解
這篇文章主要介紹了Socket+JDBC+IO實現(xiàn)Java文件上傳下載器DEMO詳解,需要的朋友可以參考下2017-05-05
springboot+maven多環(huán)境動態(tài)配置及編譯失敗的解決方案(步驟詳解)
這篇文章主要介紹了springboot+maven多環(huán)境動態(tài)配置及編譯失敗的解決方案,本文通過實例圖文相結(jié)合給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧2023-11-11
spring boot + mybatis實現(xiàn)動態(tài)切換數(shù)據(jù)源實例代碼
這篇文章主要給大家介紹了關(guān)于spring boot + mybatis實現(xiàn)動態(tài)切換數(shù)據(jù)源的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-10-10
Spring?Boot如何實現(xiàn)統(tǒng)一數(shù)據(jù)返回
這篇文章主要介紹了Spring?Boot如何實現(xiàn)統(tǒng)一數(shù)據(jù)返回,本文通過實例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-07-07
IntelliJ?IDEA2022中的Java文檔注釋設(shè)置、操作方法
這篇文章主要介紹了IntelliJ?IDEA2022中的Java文檔注釋設(shè)置、操作詳述,本文通過圖文并茂的方式給大家介紹IDEA2022?文檔注釋設(shè)置方法,需要的朋友可以參考下2022-08-08

