




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、主講人:n標識符和關鍵字標識符和關鍵字 n常量和變量常量和變量 n基本數據類型基本數據類型 n運算符和表達式運算符和表達式 n控制語句控制語句 n注釋語句注釋語句n數組數組 n本章小結本章小結7.1 圖形用戶界面的概述2.1.1 標識符標識符 標識符是用來標識符是用來標識標識類名、變量名、方法名、數組名、文件名的有效字符序列。類名、變量名、方法名、數組名、文件名的有效字符序列。也就是說,也就是說,標識符就是一個名字標識符就是一個名字。 標識符以一個字母、下劃線(標識符以一個字母、下劃線(_)或美元符號()或美元符號($)開始)開始, 隨后也可跟數字、字隨后也可跟數字、字母、下劃線或美元符號。標
2、識符區分大小寫,沒有長度限制,可以為標識符取母、下劃線或美元符號。標識符區分大小寫,沒有長度限制,可以為標識符取任意長度的名字。任意長度的名字。下面是幾個有效的標識符:下面是幾個有效的標識符:birthday age_system_varl $max 下面是幾個非法的標識符:下面是幾個非法的標識符:3max (變量名不能以數字開頭)(變量名不能以數字開頭)room# (包含非法字符(包含非法字符“#”)class (“class”為保留字)為保留字) 注意:注意:Java較高版本已經支持用漢字作為標識符或標識符的一部分。較高版本已經支持用漢字作為標識符或標識符的一部分。2.1.2 關鍵字關鍵字
3、Java中一些賦以中一些賦以特定的含義特定的含義、并用做專門用途的單詞稱為關鍵字、并用做專門用途的單詞稱為關鍵字.主要用于標識數主要用于標識數據類型名或程序構造(據類型名或程序構造(construct)名。)名。Java的關鍵字有:的關鍵字有:(1)類型()類型(Class Type) package, class, abstract, interface, implements, native, this, super, extends, new, import, instanceof, public, private, protected, (2)數據類型()數據類型(data type)
4、 char, double, enum, float, int, long, short, boolean, void, byte(3)控制類型()控制類型(Control Type) break, case, continue, default, do, else, for, goto, if, return, switch, while, throw,throws, try, catch, synchronized, final, finally, transient, strictfp (4)存儲類型()存儲類型(Storage Type) register, static(5)其它類型
5、()其它類型(Other Type) const, volatile,關鍵字關鍵字 的注意事項:的注意事項:(1 1)所有)所有JavaJava關鍵字都是小寫的,例如:關鍵字都是小寫的,例如:truetrue、falsefalse和和nullnull為小寫,而為小寫,而不是象在不是象在C+C+語言中那樣為大寫。語言中那樣為大寫。(2 2)無)無sizeofsizeof運算符,因為所有數據類型的長度和表示是固定的,與平運算符,因為所有數據類型的長度和表示是固定的,與平臺無關,不是象在臺無關,不是象在C C語言中那樣數據類型的長度根據不同的平臺而變化。語言中那樣數據類型的長度根據不同的平臺而變化。
6、這正是這正是JavaJava語言的一大特點。語言的一大特點。(3 3)gotogoto和和constconst雖然從未被使用,但也被作為雖然從未被使用,但也被作為JavaJava關鍵字保留了下來。關鍵字保留了下來。 2.2.1 常量常量就是指在程序執行期間其值不能發生變化的數據。如整型常量常量就是指在程序執行期間其值不能發生變化的數據。如整型常量123123,實型常量,實型常量1.231.23,字符常量,字符常量AA,布爾常量,布爾常量truetrue。定義常量的語法如下:定義常量的語法如下:final datatype CONSTNAME=VALUE;final datatype CONST
7、NAME=VALUE;finalfinal是是JavaJava的關鍵字,表示定義的是常量,的關鍵字,表示定義的是常量,datatypedatatype為數據類型,為數據類型,CONSTNAMECONSTNAME為常為常量的名稱,量的名稱,VALUEVALUE是常量的值。是常量的值。【例例2-12-1】定義常量定義常量PIPI,并令,并令PI=3.14PI=3.14。final double PI = 3.14; final double PI = 3.14; 2.2.2 變量變量是變量是JavaJava的基本存儲單元。在的基本存儲單元。在JavaJava中,使用變量之前需要先聲明變量。變量聲明
8、通中,使用變量之前需要先聲明變量。變量聲明通常包括常包括3 3部分,變量類型、變量名和初始值。其中變量的初始值是可選的,聲明變部分,變量類型、變量名和初始值。其中變量的初始值是可選的,聲明變量的語法格式如下:量的語法格式如下:type identifier = value, identifier = value;type identifier = value, identifier = value;typetype是是JavaJava的基本類型、類或接口類型的名稱,的基本類型、類或接口類型的名稱,identifieridentifier(標識符)是變量的名,(標識符)是變量的名,=value=
9、value表示用具體的值對變量進行初始化,即把某個值賦給變量。表示用具體的值對變量進行初始化,即把某個值賦給變量。【例例2-22-2】定義定義3 3個個intint型的變量型的變量x1 , y1, z1x1 , y1, z1。int x1,y1,z1; int x1,y1,z1; 2.2.3 變量作用域變量的定義不但包括變量名和變量類型,同時還包括它的作用域,變量的作用域指明變量的定義不但包括變量名和變量類型,同時還包括它的作用域,變量的作用域指明可以訪問該變量的程序代碼的范圍。按作用域來分,變量可分為以下幾種:局部可以訪問該變量的程序代碼的范圍。按作用域來分,變量可分為以下幾種:局部變量、類
10、成員變量、方法參數和異常處理參數。變量、類成員變量、方法參數和異常處理參數。 (1 1)局部變量定義在方法中或方法內的一個代碼塊中,其作用域為它所在的)局部變量定義在方法中或方法內的一個代碼塊中,其作用域為它所在的代碼塊。代碼塊。(2 2)方法參數用于將方法外的數據傳遞給方法,其作用域就是方法的整個方)方法參數用于將方法外的數據傳遞給方法,其作用域就是方法的整個方法體。上面例子中的變量法體。上面例子中的變量x x,就是作用域整個,就是作用域整個sumsum方法中。方法中。(3 3)類成員變量的定義在類里面,但不在類里面的某個方法中,其作用域為)類成員變量的定義在類里面,但不在類里面的某個方法中
11、,其作用域為整個類。整個類。(4 4)異常處理參數將數據傳遞給異常處理代碼,其作用域是異常處理部分。)異常處理參數將數據傳遞給異常處理代碼,其作用域是異常處理部分。2.3.1 基本數據類型基本數據類型 1 1整數類型整數類型 分別是:分別是:byte(1B)byte(1B),short(2B)short(2B), int(4B)int(4B), long(8B)long(8B)2 2浮點類型浮點類型 浮點型分為兩種,分別是浮點型分為兩種,分別是floatfloat型型(4B)(4B)和和doubledouble型型(8B)(8B)3 3字符類型字符類型 char (2B)char (2B) c
12、har x1= a ; char x1= a ; 4 4布爾類型布爾類型booleanboolean 只有兩個值:只有兩個值:truetrue和和false ,false ,在在C C語言中允許將數字值轉換成邏輯值,這在語言中允許將數字值轉換成邏輯值,這在JavaJava編程語言中是不允許的。編程語言中是不允許的。 2.3.2 數據類型轉化 1 1自動類型轉換自動類型轉換 當把低級別的變量值賦給高級別的變量時,系統自動完成數據類型的轉換。當把低級別的變量值賦給高級別的變量時,系統自動完成數據類型的轉換。例如:例如:float x = 100float x = 100;如果輸出如果輸出x x的值
13、,結果將是的值,結果將是100.0100.0。 2強制類型轉換強制類型轉換當把級別高的變量的值賦給級別低的變量時,需要強制類型轉換。當把級別高的變量的值賦給級別低的變量時,需要強制類型轉換。強制轉換的格式為:強制轉換的格式為:(類型名)要轉換的值;(類型名)要轉換的值;例如:例如:int x = (int)129.34;如果輸出如果輸出x的值,結果將是的值,結果將是129。 2.4.1 賦值運算符與賦值表達式 當需要為不同的變量賦值時,就必須使用賦值運算當需要為不同的變量賦值時,就必須使用賦值運算“=”,這里不是,這里不是“等號等號”的意思,的意思,而是而是“賦值賦值”的意思,例如:的意思,例
14、如:x = 29;這個語句的作用是將整數這個語句的作用是將整數29賦給變量賦給變量x,使變量,使變量x此時擁有的值為此時擁有的值為29。 2.4.2 算術運算符與算術表達式算術表達式是由算術運算符將運算數連接而成的表達式,下表羅列了各種算術運算符。算術表達式是由算術運算符將運算數連接而成的表達式,下表羅列了各種算術運算符。 2.4.3關系關系運算符與關系關系表達式關關系運算實際上就是系運算實際上就是“比較運算比較運算”,將兩個值進行比較,判斷比較的結果是否符合給定,將兩個值進行比較,判斷比較的結果是否符合給定的條件,如果符合則表達式的結果為的條件,如果符合則表達式的結果為truetrue,否則
15、為,否則為falsefalse。關系運算符及其說明見下表所示。關系運算符及其說明見下表所示。 2.4.4邏輯運算符與邏輯表達式邏輯運算符經常用來連接關系表達式,對關系表達式進行邏輯運算,因此邏輯運算符的邏輯運算符經常用來連接關系表達式,對關系表達式進行邏輯運算,因此邏輯運算符的運算對象必須是邏輯型數據,邏輯表達式的運行結果為邏輯型數據。運算對象必須是邏輯型數據,邏輯表達式的運行結果為邏輯型數據。JavaJava中的邏輯運中的邏輯運算符有算符有3 3種,分別是:種,分別是:&(邏輯與)、(邏輯與)、|(邏輯或)、(邏輯或)、! !(邏輯非),其中前兩個是雙(邏輯非),其中前兩個是雙目運算
16、符,第三個為單目運算符。具體的運算規則目運算符,第三個為單目運算符。具體的運算規則見下表所示。見下表所示。 2.4.5 位運算符 位運算符用來對二進制位進行運算,位運算符會對兩個運算數對應的位執行布爾代數運位運算符用來對二進制位進行運算,位運算符會對兩個運算數對應的位執行布爾代數運算。算。 1“與與”運算符(運算符(&)如果兩個輸入位都是如果兩個輸入位都是1,則按位,則按位“與與”運算符(運算符(&)生成一個輸出位)生成一個輸出位1;否則生成一個輸;否則生成一個輸出位出位0。2“或或”運算符(運算符(|)如果兩個輸入位里只要有一個是如果兩個輸入位里只要有一個是1,則按位,則按位
17、“或或”運算符(運算符(|)生成一個輸出位)生成一個輸出位1;只有;只有在兩個輸入位都是在兩個輸入位都是0的情況下,它才會生成一個輸出位的情況下,它才會生成一個輸出位0。3“異或異或”運算符(運算符()如果兩個輸入位的某一個是如果兩個輸入位的某一個是1,但不全都是,但不全都是1,那么,那么“異或異或”運算(運算()生成一個輸出位)生成一個輸出位1。 4“非非”運算符(運算符()按位按位“非非”( ,也稱為取補運算)屬于一元運算符;它只對一個運算數進行運算,也稱為取補運算)屬于一元運算符;它只對一個運算數進行運算(其他位運算運算符都是二元運算符)。按位(其他位運算運算符都是二元運算符)。按位“非
18、非”生成與輸入位相反的值生成與輸入位相反的值若輸入若輸入0,則輸出則輸出1;輸入;輸入1,則輸出,則輸出0。 位運算符和邏輯運算符都使用了同樣的符號。因此,我們能方便地記住它們的含義:位運算符和邏輯運算符都使用了同樣的符號。因此,我們能方便地記住它們的含義:由于由于“位位”是非常是非常“小小”的,所以位運算符僅使用了一位符號。位運算符可與等號的,所以位運算符僅使用了一位符號。位運算符可與等號(=)聯合使用,以便合并運算運算和賦值運算:)聯合使用,以便合并運算運算和賦值運算:&=,|=和和=都是合法的(由于都是合法的(由于是是一元運算符,所以不可與一元運算符,所以不可與=聯合使用)。聯合
19、使用)。 2.4.6 移位運算符 移位運算符運算的運算對象也是二進制的移位運算符運算的運算對象也是二進制的“位位”,但是它們只可以被用來處理整數類型。,但是它們只可以被用來處理整數類型。 1左移位運算符(左移位運算符() 左移位運算符(左移位運算符()“有符號有符號”右移位運算符(右移位運算符()則將運算符左邊的運算對象向右移動運算符右側指定的)則將運算符左邊的運算對象向右移動運算符右側指定的位數。位數。“有符號有符號”右移位運算符使用了右移位運算符使用了“符號擴展符號擴展”:若符號為正,則在高位插入:若符號為正,則在高位插入0;若符號為負,則在高位插入若符號為負,則在高位插入1。移位的結果是
20、左邊的運算數被。移位的結果是左邊的運算數被2的冪來除,而指數的的冪來除,而指數的值是由第右邊的運算數給出。例如:值是由第右邊的運算數給出。例如: 3“無符號無符號”右移位運算符(右移位運算符() Java中增加了一種中增加了一種“無符號無符號”右移位運算符(右移位運算符(),它使用了),它使用了“零擴展零擴展”:無:無論正負,都在高位插入論正負,都在高位插入0。4左移賦值運算符(左移賦值運算符(=) 運算符左邊的值向右移動由右邊的值指定的位數,再將得到的結果賦回左邊的變量。運算符左邊的值向右移動由右邊的值指定的位數,再將得到的結果賦回左邊的變量。6無符號右移賦值運算符(無符號右移賦值運算符(=
21、) 運算符左邊的值向右移動由右邊的值指定的位數,再將得到的結果賦回左邊的變量。運算符左邊的值向右移動由右邊的值指定的位數,再將得到的結果賦回左邊的變量。 2.4.7 條件運算符條件運算符比較特別,它有三個運算對象。使用條件運算符的的語法格式如下:條件運算符比較特別,它有三個運算對象。使用條件運算符的的語法格式如下: ? value1:value2 如果如果“布爾表達式布爾表達式”的結果為的結果為true,就計算,就計算 “value1”,而且這個計算結果也就是運算,而且這個計算結果也就是運算符最終產生的值。如果符最終產生的值。如果“布爾表達式布爾表達式”的結果為的結果為false,就計算,就計
22、算“value2”,同樣,它,同樣,它的結果也就成為了運算符最終產生的值。例如:的結果也就成為了運算符最終產生的值。例如:int a = 3, b = 6, c;c = (a b)? 1:2;執行后的執行后的c的值為的值為2。 Java中的控制語句有以下幾類。n分支語句n循環語句n跳轉語句2.5.1 分支語句分支語句使得程序在執行時可以跳過某些語句不執行(可根據條件表達式的值有選擇地分支語句使得程序在執行時可以跳過某些語句不執行(可根據條件表達式的值有選擇地執行某些語句)。執行某些語句)。Java 語言支持語言支持if和和switch分支語句。分支語句。1if-else語句語句if-else語
23、句或許是控制程序流程最基本的形式,其中的語句或許是控制程序流程最基本的形式,其中的else是可選的,所以可按下述兩是可選的,所以可按下述兩種形式來描述種形式來描述if語句。語句。 (1)沒有)沒有else的的if語句語法格式語句語法格式if (條件表達式條件表達式)語句或塊語句或塊;程序的執行流程如下圖所示(2)帶有)帶有else的的if語句語法格式語句語法格式if (條件表達式條件表達式) 語句塊;語句塊; else 語句塊;語句塊;程序的執行流程如右圖所示。程序的執行流程如右圖所示。 2.switch語句語句switch語句是多分支的開關語句,它的一般格式定義如下(其中語句是多分支的開關語
24、句,它的一般格式定義如下(其中break語句是可選的)。語句是可選的)。switch(表達式)(表達式) case 常量值常量值1: 語句塊語句塊 break; case 常量值常量值2: 語句塊語句塊 break; case 常量值常量值n: 語句塊語句塊 break; default: 語句塊語句塊 注意:注意:(1)switch后面括號中表達式的值必須是后面括號中表達式的值必須是byte,char,short,int類型的常量表達式,類型的常量表達式,而不能用浮點類型或而不能用浮點類型或long類型,也不能為一個字符串。類型,也不能為一個字符串。(2)default子句是可選的。子句是可
25、選的。(3)break語句用來在執行完一個語句用來在執行完一個case分支后,使程序跳出分支后,使程序跳出switch語句,即終止語句,即終止switch語句的執行。但在特殊情況下,多個不同的語句的執行。但在特殊情況下,多個不同的case值要執行一組相同的運算,值要執行一組相同的運算,這時一組中前面的這時一組中前面的case可以去掉可以去掉break。(4)一個)一個switch語句可以代替多個語句可以代替多個if-else語句組成的分支語句,而語句組成的分支語句,而switch語句從思路語句從思路上顯得更清晰。上顯得更清晰。 Java 語言中提供的循環語句有:nwhile語句ndo-whil
26、e語句nfor語句2.5.2 循環語句1while語句語句while語句的格式如下:語句的格式如下:while(條件表達式條件表達式) 循環體語句;循環體語句;在循環剛開始時,會計算一次在循環剛開始時,會計算一次“條件表達式條件表達式”的值。當條件為假時,將不執行循環體,的值。當條件為假時,將不執行循環體,直接跳轉到循環體外,執行循環體外的后續語句;當條件為真時,便執行循環體。每直接跳轉到循環體外,執行循環體外的后續語句;當條件為真時,便執行循環體。每執行完一次循環體,都會重新計算一次條件表達式,當條件為真時,便繼續執行循環執行完一次循環體,都會重新計算一次條件表達式,當條件為真時,便繼續執行
27、循環體,直到條件為假才結束循環。體,直到條件為假才結束循環。 while語句的結構如下圖所示 2do-while語句語句do-while語句的格式如下:語句的格式如下:do 循環體語句;循環體語句;while(條件表達式條件表達式);do-while循環與循環與while循環的不同在于:它先執行循環中的語句,然后再判斷條件是否循環的不同在于:它先執行循環中的語句,然后再判斷條件是否為真,如果為真則繼續循環;如果為假,則終止循環。因此,為真,如果為真則繼續循環;如果為假,則終止循環。因此,do-while循環至少要循環至少要執行一次循環語句。執行一次循環語句。do-while語句的結構如下圖所示
28、 3for語句語句for語句是三個循環語句中功能最強,使用最廣泛的一個。語句是三個循環語句中功能最強,使用最廣泛的一個。for語句的格式如下:語句的格式如下:for(表達式表達式1;表達式表達式2;表達式表達式3) 循環體語句循環體語句;表達式表達式1一般是一個賦值語句,它用來給循環控制變量賦初值;一般是一個賦值語句,它用來給循環控制變量賦初值;表達式表達式2是一個布爾類型的表達式,它決定什么時候退出循環;是一個布爾類型的表達式,它決定什么時候退出循環;表達式表達式3一般用來修改循環變量,控制變量每循環一次后按什么方式變化。一般用來修改循環變量,控制變量每循環一次后按什么方式變化。上述三個表達
29、式之間用上述三個表達式之間用“;”分開。分開。for語句的結構如下圖所示 for語句的執行過程:語句的執行過程:(1)在循環剛開始時,先計算表達式)在循環剛開始時,先計算表達式1,在這個過程中,一般完成的是初始化循環變量,在這個過程中,一般完成的是初始化循環變量或其它變量。或其它變量。(2)根據表達式)根據表達式2的值來決定是否執行循環體。表達式的值來決定是否執行循環體。表達式2是一個返回布爾值的表達式,是一個返回布爾值的表達式,若該值為假,將不執行循環體,并退出循環;若該值為真,將執行循環體。若該值為假,將不執行循環體,并退出循環;若該值為真,將執行循環體。(3)執行完一次循環體后,計算表達
30、式)執行完一次循環體后,計算表達式3。在這個過程中一般會修改循環變量。在這個過程中一般會修改循環變量。(4)轉入第()轉入第(2)步繼續執行。)步繼續執行。 2.5.3 2.5.3 跳轉語句跳轉語句1 1breakbreak語句語句在在JavaJava語言中,語言中,breakbreak用于強行退出循環,不執行循環中剩余的語句。如果用于強行退出循環,不執行循環中剩余的語句。如果breakbreak句出現句出現在嵌套循環中的內層循環,則在嵌套循環中的內層循環,則breakbreak只會退出當前的一層循環。只會退出當前的一層循環。2 2continuecontinue語句語句當程序運行到當程序運行
31、到continuecontinue語句時,就會停止循環體剩余的語句,而回到循環的開始處繼續語句時,就會停止循環體剩余的語句,而回到循環的開始處繼續執行循環。執行循環。Java語言提供了語言提供了3種形式的注釋:單行注釋、多行注釋和文檔注釋。種形式的注釋:單行注釋、多行注釋和文檔注釋。1單行注釋單行注釋 注釋格式如下:注釋格式如下: / 注釋內容注釋內容該方法進行單行注釋,從符號該方法進行單行注釋,從符號“/”直到換行為止的所有內容均作為注釋而被編譯器忽略。直到換行為止的所有內容均作為注釋而被編譯器忽略。例如下面代碼:例如下面代碼: int age=24; /定義整型變量定義整型變量age用于保
32、存年齡信息用于保存年齡信息上述語句中上述語句中“/定義整型變量定義整型變量age用于保存年齡信息用于保存年齡信息”就是行注釋部分。就是行注釋部分。2多行注釋多行注釋多行注釋通過多行注釋通過“/*”與與“*/”符號進行標記,它們必須成對出現,在它們之間輸入的注釋內容可符號進行標記,它們必須成對出現,在它們之間輸入的注釋內容可以換行。注釋格式如下:以換行。注釋格式如下:/ *注釋內容注釋內容1注釋內容注釋內容2*/2文檔注釋文檔注釋當這類注釋出現在任何聲明(如類的聲明、類的成員變量的聲明或者類的成員方法的聲明)之前當這類注釋出現在任何聲明(如類的聲明、類的成員變量的聲明或者類的成員方法的聲明)之前
33、時,會被時,會被JavaDoc文檔工具讀取作為文檔工具讀取作為JavaDoc文檔內容,文檔是對代碼結構和功能的描述。該注釋的文檔內容,文檔是對代碼結構和功能的描述。該注釋的格式如下:格式如下:/ * 提示信息提示信息1* 提示信息提示信息2* */ 在解決實際問題的過程中,往往需要處理大量相同類型的數據,而在解決實際問題的過程中,往往需要處理大量相同類型的數據,而且這些數據被反復使用。這種情況下,可以考慮使用數組來處理這種問且這些數據被反復使用。這種情況下,可以考慮使用數組來處理這種問題。數組就是相同類型的數據按順序組成的一種復合型數據類型。通過題。數組就是相同類型的數據按順序組成的一種復合型
34、數據類型。通過數組名和下標來使用數組中的數據,下標從數組名和下標來使用數組中的數據,下標從0開始。開始。使用數組的最大好處是:可以讓一批相同性質的數據共用一個變量使用數組的最大好處是:可以讓一批相同性質的數據共用一個變量名,而不必為每個數據命名一個名字。使用數組不僅使程序書寫大名,而不必為每個數據命名一個名字。使用數組不僅使程序書寫大為簡便清晰,可讀性大大提高,而且便于用循環語句簡單處理這類數據。為簡便清晰,可讀性大大提高,而且便于用循環語句簡單處理這類數據。 2.7.1 一維數組一維數組1一維數組聲明一維數組聲明聲明一維數組有下列兩種格式:聲明一維數組有下列兩種格式:(1)數組元素類型)數組
35、元素類型 數組名字數組名字 ;(2)數組元素類型)數組元素類型 數組名字;數組名字;例如:采用不同的格式分別聲明一維數組例如:采用不同的格式分別聲明一維數組a1和和b1。int a1; int b1;數組數組a1和和b1中存放中存放int類型的數據。類型的數據。2一維數組聲初始化一維數組聲初始化聲明數組僅為數組指定數組名和數組元素的類型,并沒有為元素分配實際的存儲空聲明數組僅為數組指定數組名和數組元素的類型,并沒有為元素分配實際的存儲空間。間。Java數組的初始化可以通過直接指定初值的方式來完成,也可以用數組的初始化可以通過直接指定初值的方式來完成,也可以用new操作符來完操作符來完成。成。1
36、)直接指定初值的方式)直接指定初值的方式在聲明一個數組的同時將數組元素的初值依次寫入賦值號后的一對花括號內,給這在聲明一個數組的同時將數組元素的初值依次寫入賦值號后的一對花括號內,給這個數組的所有元素賦初始值。個數組的所有元素賦初始值。例如:例如:int a1=23,-9,38,8,65; 2)用關鍵字)用關鍵字new初始化數組初始化數組只為數組分配存儲空間而不對數組元素賦初值。用關鍵字只為數組分配存儲空間而不對數組元素賦初值。用關鍵字new來初始化數組有兩種來初始化數組有兩種方式:方式:(1)先聲明數組,再初始化數組。格式如下:)先聲明數組,再初始化數組。格式如下:類型標識符類型標識符 數組
37、名數組名 ;數組名數組名=new 類型標識符類型標識符數組長度數組長度;第一條語句是數組的聲明,第二條語句是初始化。數組長度通常是整型常量,第一條語句是數組的聲明,第二條語句是初始化。數組長度通常是整型常量,用以指明數組元素的個數。用以指明數組元素的個數。例如:例如:int a; a = new int9;(2)在聲明數組的同時用)在聲明數組的同時用new關鍵字初始化數組。格式如下:關鍵字初始化數組。格式如下:類型標識符類型標識符 數組名數組名 = new 類型標識符類型標識符數組長度數組長度 ; 或者或者類型標識符類型標識符 數組名數組名= new 類型標識符類型標識符數組長度數組長度 ;
38、例如:例如:int a=new int10; 3 3一維數組的引用一維數組的引用一維數組元素的引用格式如下:一維數組元素的引用格式如下:數組名數組名 數組下標數組下標 數組下標的取值范圍是數組下標的取值范圍是0 0( (數組長度數組長度-1)-1),下標值可以是整數型常量或整數型變量表,下標值可以是整數型常量或整數型變量表達式。達式。例如,在有了例如,在有了“int a=new int10;”int a=new int10;”聲明語句后,下面的兩條賦值語句是合法聲明語句后,下面的兩條賦值語句是合法的:的:a3=25; a3=25; a3+6=90; a3+6=90; 語句語句a10=8a10=
39、8;卻是錯誤的,因為下標值超過了數組下標的取值范圍。;卻是錯誤的,因為下標值超過了數組下標的取值范圍。 2.7.2 二維數組在在Java語言中,把二維數組實際上看成是其每個數組元素是一個一維數組的一維數組。語言中,把二維數組實際上看成是其每個數組元素是一個一維數組的一維數組。這里面最根本原因是計算機存儲器的編址是一維的,即存儲單元的編號從這里面最根本原因是計算機存儲器的編址是一維的,即存儲單元的編號從0開始一直開始一直連續編到最后一個最大的編號。連續編到最后一個最大的編號。 1二維數組聲明二維數組聲明二維數組的聲明只需要給出兩對方括號,格式如下:二維數組的聲明只需要給出兩對方括號,格式如下:類
40、型標識符類型標識符 數組名數組名 ;類型標識符類型標識符 數組名;數組名;其中:類型說明符可以是其中:類型說明符可以是Java的基本類型、類或接口;數組名是用戶遵循標識符命名規的基本類型、類或接口;數組名是用戶遵循標識符命名規則給出的一個標識符;兩個方括號中前面的方括號表示行,后面的方括號表示列。則給出的一個標識符;兩個方括號中前面的方括號表示行,后面的方括號表示列。2二維數組聲初始化二維數組聲初始化二維數組聲明同樣也是為數組命名和指定其數據類型的。它不為數組元素分配內存,只二維數組聲明同樣也是為數組命名和指定其數據類型的。它不為數組元素分配內存,只有經初始化后才能為其分配存儲空間。二維數組的初始化也分為直接指定初值和用有經初始化后才能為其分配存儲空間。二維數組的初始化也分為直接指定初值和用new操作符兩種方式。操作符兩種方式。 2二維數組聲初始化二維數組聲初始化1)直接指定初值的方式)直接指定初值的方式在數組聲明時對數據元素賦初值就是用指定的初值對數組初始化。在數組聲明時對數據元素賦初值就是用指定的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆安徽省蚌埠局屬學校數學七下期末復習檢測試題含解析
- 貴州省黔東南州麻江縣2025年八年級數學第二學期期末經典試題含解析
- 工業和信息化領域數據安全事件上報(模板)
- 2025屆浙江省江北區七校聯考七年級數學第二學期期末質量檢測試題含解析
- 法律科學的分類及應用試題及答案
- 戰略性儲蓄的思維與方法計劃
- 江蘇省南京市南航附中2025屆八下數學期末學業水平測試模擬試題含解析
- 2025年市場需求分析與預測試題及答案
- 網絡管理員考試知識結構試題及答案細解
- 城市交通環境影響評價師重點基礎知識點
- 《意大利美食文化》課件
- 綠色中國智慧樹知到課后章節答案2023年下華東理工大學
- 《施之以愛報之以恩》的主題班會
- 茶葉食用農產品承諾書(八篇)
- 組織行為學全套課件(羅賓斯版)
- 數據治理咨詢項目投標文件技術方案
- 單梁起重機安全操作培訓課件
- 動火證施工現場動火證申請書
- 安保安全隱患排查記錄表
- 2022年05月四川省涼山州國有工業投資發展集團有限責任公司專業技術人員及管理人員筆試題庫含答案解析
- 2023年全國測繪生產成本費用定額
評論
0/150
提交評論