java 資料文檔_第1頁
java 資料文檔_第2頁
java 資料文檔_第3頁
java 資料文檔_第4頁
java 資料文檔_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、12一維數組的聲明和初始化數組元素的引用二維數組的聲明和使用數組拷貝3 數組是多個相同類型數據的組合,實現對這些數據的統(tǒng)一管理 數組屬引用類型,數組型數據是對象(object),數組中的每個元素相當于該對象的成員變量 數組中的元素可以是任何數據類型,包括基本類型和引用類型4 一維數組的聲明方式:type var 或 type var;例如:int a;int a1;double b;Mydate c; Java語言中聲明數組時不能指定其長度(數組中元素的個數),例如:int a5; /非法5創(chuàng)建數組創(chuàng)建數組 (1) public class Test public static void ma

2、in(String args) int s; s = new int10; for ( int i=0; i10; i+ ) si =2*i+1; System.out.println(si); Java中使用關鍵字new 創(chuàng)建數組對象 創(chuàng)建基本數據類型一維數組對象演示1main棧內存s堆內存處內存狀態(tài)6創(chuàng)建數組創(chuàng)建數組 (2) 創(chuàng)建基本數據類型一維數組對象演示2main棧內存s0int對象000000000堆內存處內存狀態(tài) public class Test public static void main(String args) int s; s = new int10; for ( in

3、t i=0; i10; i+ ) si =2*i+1; System.out.println(si); 7創(chuàng)建數組創(chuàng)建數組 (3)main棧內存s1int對象35791113151719堆內存 public class Test public static void main(String args) int s; s = new int10; for ( int i=0; i10; i+ ) si =2*i+1; System.out.println(si); 處內存狀態(tài) 創(chuàng)建基本數據類型一維數組對象演示38創(chuàng)建數組創(chuàng)建數組 (4) 創(chuàng)建元素為引用數據類型的數組class MyDate pr

4、ivate int day; private int month; private int year; public MyDate(int d, int m, int y)day = d; month = m; year = y; public void display()System.out.println(day + - + month + - + year); 9創(chuàng)建數組創(chuàng)建數組 (5) public class Test public static void main(String args) MyDate m; m = new MyDate10; for ( int i=0; i10

5、; i+ ) mi =new MyDate(i+1 , i+1, 1990+i); mi.display(); main棧內存m堆內存 創(chuàng)建元素為引用數據類型的數組演示1處內存狀態(tài)10創(chuàng)建數組創(chuàng)建數組 (6) public class Test public static void main(String args) MyDate m; m = new MyDate10; for ( int i=0; i10; i+ ) mi =new MyDate(i+1 , i+1, 1990+i); mi.display(); main棧內存mnullMyDate對象nullnullnullnullnu

6、llnullnullnullnull堆內存 創(chuàng)建元素為引用數據類型的數組演示1處內存狀態(tài)11創(chuàng)建數組創(chuàng)建數組 (7) Java中使用關鍵字new 創(chuàng)建數組對象main棧內存m*MyDate對象*nullnullnullnullnullnullnull堆內存111990221991331992 public class Test public static void main(String args) MyDate m; m = new MyDate10; for ( int i=0; i10; i+ ) mi =new MyDate(i+1 , i+1, 1990+i); mi.display

7、(); for循環(huán)執(zhí)行三次后內存狀態(tài)12數組初始化數組初始化 動態(tài)初始化 數組定義與為數組元素分配空間并賦值的操作分開進行。MyDate dates;dates = new MyDate3;dates0 = new MyDate(22, 7, 1964);dates1 = new MyDate(1, 1, 2000);dates2 = new MyDate(22, 12, 1964);int a;a = new int3;a0 = 3;a1 = 9;a2 = 8;13數組初始化數組初始化 靜態(tài)初始化: 在定義數組的同時就為數組元素分配空間并賦值。int a = 3, 9, 8;MyDate d

8、ates = new MyDate(22, 7, 1964), new MyDate(1, 1, 2000), new MyDate(22, 12, 1964);14數組元素的默認初始化數組元素的默認初始化 數組是引用類型,它的元素相當于類的成員變量,因此數組一經分配空間,其中的每個元素也被按照成員變量同樣的方式被隱式初始化。例如:public class Test public static void main(String argv)int a= new int5; System.out.println(a3); 15數組元素的引用數組元素的引用 定義并用運算符new為之分配空間后后,才可

9、以引用數組中的每個元素; 數組元素的引用方式:arrayNameindex index為數組元素下標,可以是整型常量或整型表達式。如a3 , bi , c6*i; 數組元素下標從0開始;長度為n的數組合法下標取值范圍: 0 n-1; 每個數組都有一個屬性length指明它的長度,例如:a.length 指明數組a的長度(元素個數);16Ex1編寫一應用程序實現下述功能:創(chuàng)建一基本(primitive)數據類型的數組并輸出各數組元素的值。例如: char s; s = new char26; for ( int i=0; i26; i+ ) si = (char) (A + i); System

10、.out.println(si); / System.out.println(“s” + i + “=” + si); 編寫一應用程序練習數組對象的兩種初始化方式,并輸出各元素的值。編寫程序,練習使用數組類型對象的length屬性,測試并體會數組元素的默認初始化機制;17多維數組多維數組 (1) 二維數組舉例:int a = 1,2,3,4,0,9,5,6,7; i jj = 0j = 1j = 2j = 3i = 012i = 13409i = 256718多維數組多維數組 (2)Java中多維數組被做為數組的數組處理Java中多維數組的聲明和初始化應按從高維到低維的順序進行int t =

11、new int 4;t0 = new int5;t1 = new int5;int t1 = new int 4; /非法19多維數組多維數組 (3) Java中多維數組不必須是規(guī)則矩陣形式int tt = new int4; tt0 = new int2;tt1 = new int4;tt2 = new int6;tt3 = new int8;int tt = new int45;20多維數組初始化多維數組初始化 靜態(tài)初始化:int intArray = 1,2,2,3,3,4,5;int intArray132 = 1,2,2,3,4,5; /illegal 動態(tài)初始化int a = ne

12、w int45;int b = new int3 b0 = new int2;b1 = new int3;b2 = new int5;21編寫一應用程序實現下述功能:創(chuàng)建一基本(primitive)數據類型的二維數組并輸出各數組元素的值。例如: int a = 1,2,2,3,4,5,5,6,7;for(int i=0;i3;i+) for(int j=0;jai.length;j+) System.out.println(intArray1ij); 22復制數組復制數組Java.lang.System類的arraycopy()方法提供了數組元素復制功能: /源數組 int source =

13、1, 2, 3, 4, 5, 6 ; / 目的數組 int dest = 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 ; / 復制源數組中從下標0開始的source.length個元素到 / 目的數組,從下標0的位置開始存儲。 System.arraycopy(source, 0, dest, 0, source.length);23編寫一應用程序練習數組復制方法,并輸出在復制操作執(zhí)行前后dest數組各元素的值。建議輸出采用System.out.print( + holdi);方法。24目標目標/功能要求:功能要求:定義一個工具類,實現下述兩項功能:1.將任意輸入的十進制數據轉換為二進制形式返回;2.將任意輸入的二進制數據轉換為十進制形式返回。說明說明/提示:提示: 1.工具類可定義成如下結構:public class ConvertTool/將一個byte/short/char/int型變量轉變?yōu)槎M制字符串的形式。public String conversion(int data)/將一個長度為8/16/32位的二進制數字符串作為輸入,將其轉變?yōu)檎麛岛筝敵觥u

溫馨提示

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

評論

0/150

提交評論