更新時(shí)間:2019-09-05 11:27:32 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽3591次
今天動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)小編分別介紹java數(shù)組定義、java數(shù)組作為方法參數(shù)傳遞及java中數(shù)組作為方法返回值的內(nèi)容,希望各位小伙伴看完此文,能夠掌握java數(shù)組的定義,參數(shù)傳遞,返回值,下面就隨小編一起看看吧。
一、數(shù)組的定義
方式一:
格式:數(shù)組存儲(chǔ)的數(shù)據(jù)類型【】數(shù)組名字=new 數(shù)組存儲(chǔ)的數(shù)據(jù)類型【長(zhǎng)度】;
數(shù)組存儲(chǔ)的數(shù)據(jù)類型:創(chuàng)建的數(shù)組容器可以存儲(chǔ)什么數(shù)據(jù)類型。
【】:表示數(shù)組。
數(shù)組名字:為定義的數(shù)組起個(gè)變量名,滿足標(biāo)識(shí)符規(guī)范,可以使用名字操作數(shù)組。
new:關(guān)鍵字。
數(shù)組存儲(chǔ)的數(shù)據(jù)類型:創(chuàng)建的數(shù)組容器可以存儲(chǔ)什么數(shù)據(jù)類型。
【長(zhǎng)度】:數(shù)組的長(zhǎng)度,表示數(shù)組容器中可以存儲(chǔ)多少個(gè)元素。
注意:數(shù)組有定長(zhǎng)的特性,長(zhǎng)度一旦指定,不可更改。
例如:int [] arr=new int[5];
方式二:
格式:數(shù)據(jù)類型 【】 數(shù)組名=new 數(shù)據(jù)類型【】{元素1,元素2,元素3...};
注意:給定了具體的元素就不能給定長(zhǎng)度。
例如:int [] arr=new int{23,4,54,324,2};
方式三:
格式:數(shù)據(jù)類型 【】 數(shù)組名={元素1,元素2,元素3...};
例如:int [] arr={12,34,5446,5,45};
二、數(shù)組的訪問(wèn)
直接輸出數(shù)組名,顯示的是數(shù)組的地址,如下面示例代碼中[I@50cbc42f
索引:每一個(gè)存儲(chǔ)到數(shù)組的元素,都會(huì)自動(dòng)擁有一個(gè)編號(hào),從0開(kāi)始,這個(gè)自動(dòng)編號(hào)稱為數(shù)組索引(index),可以通過(guò)數(shù)組的索引訪問(wèn)到數(shù)組中的元素。
通過(guò)索引訪問(wèn)數(shù)組中的元素:
數(shù)組名【索引】,獲取出數(shù)組中的元素
數(shù)組名【索引】=數(shù)組,為數(shù)組中的元素賦值。
定義一個(gè)空數(shù)組,動(dòng)態(tài)初始化創(chuàng)建的數(shù)組,java會(huì)有默認(rèn)值
int[]的默認(rèn)值是0,double[]默認(rèn)值是0.0,boolean[]的默認(rèn)值是false
int [] arr2=new int[4];
System.out.println(arr2[0]);//0
double[] arr3=new double[4];
System.out.println(arr3[0]);//0.0
boolean[] arr4=new boolean[4];
System.out.println(arr4[0]);//false
數(shù)組的長(zhǎng)度屬性:每個(gè)數(shù)組都具有長(zhǎng)度,而且是固定的,獲取數(shù)組的長(zhǎng)度格式:數(shù)組名.length,數(shù)組的最大索引值為:數(shù)組名.length-1
public class ArrayDemo {
public static void main(String[] args) {
//定義數(shù)組
int [] arr = {10,20,30,40};
//直接輸出數(shù)組
System.out.println(arr);//[I@50cbc42f
//通過(guò)索引獲取數(shù)組元素
System.out.println(arr[0]);//10
System.out.println(arr[1]);//20
System.out.println(arr[2]);//30
System.out.println(arr[3]);//40
System.out.println("------------");
//通過(guò)索引修改數(shù)組元素
arr[2]=100;
System.out.println(arr[0]);//10
System.out.println(arr[1]);//20
System.out.println(arr[2]);//100
System.out.println(arr[3]);//40
System.out.println("--------------");
/*
定義一個(gè)空數(shù)組,動(dòng)態(tài)初始化創(chuàng)建的數(shù)組,java會(huì)有默認(rèn)值
int[]的默認(rèn)值是0,double[]默認(rèn)值是0.0,boolean[]的默認(rèn)值是false
*/
int [] arr2=new int[4];
System.out.println(arr2[0]);//0
double[] arr3=new double[4];
System.out.println(arr3[0]);//0.0
boolean[] arr4=new boolean[4];
System.out.println(arr4[0]);//false
}
}
三、 數(shù)組原理內(nèi)存圖-內(nèi)存概述
內(nèi)存是計(jì)算機(jī)中的重要原件,臨時(shí)存儲(chǔ)區(qū)域,作用是運(yùn)行程序。我們編寫(xiě)的程序是存放在硬盤(pán)中的,在硬盤(pán)中的程序是不會(huì)運(yùn)行的,必須放進(jìn)內(nèi)存中才能運(yùn)行,運(yùn)行完畢后會(huì)清空內(nèi)存。
java虛擬機(jī)要運(yùn)行程序,必須要對(duì)內(nèi)存進(jìn)行空間分配和管理。
四、java虛擬機(jī)的內(nèi)存劃分
JVM的內(nèi)存劃分
方法棧:方法運(yùn)行時(shí) 使用的內(nèi)存,比如main方法運(yùn)行,進(jìn)入方法棧中執(zhí)行。(即方法進(jìn)棧執(zhí)行)
堆內(nèi)存:存儲(chǔ)對(duì)象或者數(shù)組,new來(lái)創(chuàng)建的,都存儲(chǔ)在堆內(nèi)存。(看到new就想到存儲(chǔ)在堆內(nèi)存中)
方法區(qū):存儲(chǔ)可以運(yùn)行的class文件。
本地方法棧:JVM在使用操作系統(tǒng)功能的時(shí)候使用,和我們開(kāi)發(fā)無(wú)關(guān)。
寄存器:給CPU使用,和我們開(kāi)發(fā)無(wú)關(guān)。
五、數(shù)組作為方法參數(shù)
數(shù)組作為方法參數(shù)傳遞,傳遞的參數(shù)是數(shù)組內(nèi)存的地址值。
public class ArrayDemo01 {
public static void main(String[] args) {
int [] arr=new int[]{11,22,33,44,55};
System.out.println("arr="+arr);//arr=[I@58ceff1
printArray(arr);//arr=[I@58ceff1傳遞的是地址值
}
/*
定義方法,用于打印int類型數(shù)組中的內(nèi)容
返回值類型:打印完了就可以了,不需要返回值,void
參數(shù)列表:打印哪個(gè)數(shù)組不確定,作為參數(shù)列表
輸出作為參數(shù),實(shí)際傳遞的是地址值
*/
public static void printArray(int[] a){
System.out.println("a="+a);//a=[I@58ceff1
//遍歷數(shù)組
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
}
}
六、 數(shù)組作為方法返回值
數(shù)組作為方法的返回值,返回的是數(shù)組的內(nèi)存地址
public class ArrayDemo02 {
public static void main(String[] args) {
int[] a=getArray();
System.out.println("a="+a);//a=[I@58ceff1
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
}
/*
數(shù)組可以作為返回值類型
*/
public static int[] getArray(){
int[] arr=new int[]{11,22,33,44,55};
System.out.println("arr="+arr);//arr=[I@58ceff1
return arr;
}
}
相關(guān)免費(fèi)視頻教程推薦
零基礎(chǔ)java教程下載——數(shù)組作為方法返回值類型與參數(shù)類型:http://m.dabaquan.cn/xiazai/2530.html
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743