java數(shù)組的概念和作用_第1頁
java數(shù)組的概念和作用_第2頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、 4/4java數(shù)組的概念和作用 1 數(shù)組的概念 和其他語言一樣,Java也提供數(shù)組支持,數(shù)組是屬于引用類型,即數(shù)組是一個 對象。 強調(diào)數(shù)組的類型是引用類型。 數(shù)組的基本概念及作用 數(shù)組是相同數(shù)據(jù)類型元素的集合 數(shù)組本身是引用數(shù)據(jù)類型,即對象。但是數(shù)組可以存儲基本數(shù)據(jù)類型,也可以存儲引用數(shù)據(jù)類型。 數(shù)組的舉例 int a = new int 1,2,3,4,5; String s = new String 小熊,小小熊,小小小熊; Employee e=new Employee10;(Employee是自定義類) 2 數(shù)組的聲明 數(shù)組的聲明的兩種方式: 數(shù)據(jù)類型 數(shù)組名字例如:int a; 數(shù)

2、據(jù)類型數(shù)組的名字 例如: int a ; 注意: 在Java語言中兩種聲明方法沒有任何區(qū)別,但是建議大家用第一種,避免混淆a的數(shù)據(jù)類型。 數(shù)組在聲明后還只是一個空指針,不能使用,要想使用必須創(chuàng)建。 數(shù)組創(chuàng)建的三種方式: ?/聲明數(shù)組的同時,根據(jù)指定的長度分配內(nèi)存,但數(shù)組中元素值都為默認的初始化值 char chAry = new char10; ?/聲明數(shù)組并分配內(nèi)存,同時將其初始化 ?int ary1 = new int1, 2, 3, 4, 5; ?/與前一種方式相同,僅僅只是語法相對簡略 ?int ary2 = 1, 2, 3, 4, 5; 從另一個角度,數(shù)組創(chuàng)建可以分為動態(tài)和靜態(tài)兩種

3、動態(tài)創(chuàng)建數(shù)組(沒有為元素賦值,可以結(jié)合for循環(huán)進行賦值) char chAry = new char10; 靜態(tài)創(chuàng)建數(shù)組,在創(chuàng)建的時候,即為每個元素賦初值 int ary1 = new int1, 2, 3, 4, 5; 數(shù)組的長度 數(shù)組的長度:length屬性 int b1 = new int 1,2,3,4,5,6,7; System.out.println(b1.length); 注意:數(shù)組的長度是屬性,String的長度是length(); 創(chuàng)建數(shù)組的時候必須指定數(shù)組的長度,而且一經(jīng)定義則不允許改變。 數(shù)組的長度雖然是7,但是在內(nèi)存中實際給8個位置,另外一個存儲7. 數(shù)組之間賦值 在

4、C語言中,不可以將數(shù)組直接賦值給另一個數(shù)組; 在Java中,語法上允許這樣做,但實際得到的效果是兩個數(shù)組引用指向同一塊內(nèi)存。 int ary1 = 2, 4, 6, 8, 10; int ary2; ary2 = ary1; /允許這樣賦值 數(shù)組賦值示例 public class ArrayDemo public static void main(String args) int ary1 = 2, 4, 6, 8, 10; /聲明并初始化數(shù)組1 int ary2; /聲明數(shù)組2 ary2 = ary1; /將數(shù)組1賦值給數(shù)組2 ary23 = 1024; /通過數(shù)組2修改其中一個元素的值 /

5、打印出數(shù)組1中的元素 System.out.println(數(shù)組1中的元素:); for (int i = 0; i ary1.length; i+) System.out.println(ary1i); /打印出數(shù)組2中的元素 System.out.println(數(shù)組2中的元素:); for (int i = 0; i ary2.length; i+) System.out.println(ary2i); 3 數(shù)組的訪問 數(shù)組元素的訪問: 數(shù)組名字索引 例如:a2; 注意: 數(shù)組的索引從0開始。 索引的數(shù)據(jù)類型是整型 索引最大值和數(shù)組長度始終差1 數(shù)組的迭代 數(shù)組迭代的兩種方式: 第一種:

6、for循環(huán) int b1 = new int 1,2,3,4,5,6,7; System.out.println(b10); System.out.println(b12); /數(shù)組的迭代 for(int i =0;ib1.length;i+) System.out.println(b1i); 第二種:增強for循環(huán) int b1 = new int 1,2,3,4,5,6,7; /增強for循環(huán) for(數(shù)組元素的類型臨時變量名字:數(shù)組的名字) System.out.println(臨時變量名字 ); 即: for(int x:b1) System.out.println(x); 注意: 兩

7、種方式的迭代都可以,第二種在企業(yè)項目開發(fā)中較為常用增強for循環(huán)是JDK5之后增加的新特性。 多維數(shù)組的定義 二維數(shù)組的定義: 多維數(shù)組即數(shù)組的數(shù)組,即數(shù)組的元素也是數(shù)組 例如: int a = 1,1,2,1,2,3; 二維數(shù)組的聲明: 三種方式: int a; int a1; int a2; 注意:建議用第一種,不容易混淆a的數(shù)據(jù)類型 int a = new int 2; a0 = 1,2,3; a1 = 4,5,6; 多維數(shù)組的迭代: int b1 = new int 1,2,3,4; for(int i =0;ib1.length;i+) for(int j =0;jb1i.lengt

8、h;j+) System.out.print(b1ij); 數(shù)組的拷貝 在JDK API的System類中,提供了一個數(shù)組拷貝的靜態(tài)方法: arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 從指定源數(shù)組中復(fù)制一個數(shù)組,復(fù)制從指定的位置開始,到目標(biāo)數(shù)組的指定位置結(jié)束 int a=10,100,1000; int b=20,200,2000,20000; System.arraycopy(a, 1, b, 2, 2); for(int x:b) System.out.println(x); 輸出結(jié)果 20

9、 200 100 1000 值傳遞的定義 值傳遞的本質(zhì)是賦值,是把實際參數(shù)賦值給形式參數(shù)的過程 基本數(shù)據(jù)類型是值之間進行賦值 引用數(shù)據(jù)類型虛擬地址之間進行賦值 基本數(shù)據(jù)類型:傳遞的是值(value)的拷貝 package com.etc.chapter03; public class TestPass public void add(int x) x+; System.out.println(add()方法:x=+x); public static void main(String args) TestPass pass=new TestPass(); int x=100; pass.add(

10、x); System.out.println(main()方法:x=+x); 用類型:傳遞的是引用(reference) public class TestByReference public void test(PersonalAccount a) a.deposit(2000); System.out.println(test 方法中a的余額=+a.getBalance(); public static void main(String args) PersonalAccount a=new PersonalAccount(3333,123,1900); TestByReference t=new Tes

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論