第2章Java語言入門必備.ppt_第1頁
第2章Java語言入門必備.ppt_第2頁
第2章Java語言入門必備.ppt_第3頁
第2章Java語言入門必備.ppt_第4頁
第2章Java語言入門必備.ppt_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第2章 Java語言入門必備,主講人:,本章主要內(nèi)容,標識符和關鍵字 常量和變量 基本數(shù)據(jù)類型 運算符和表達式 控制語句 注釋語句 數(shù)組 本章小結,7.1 圖形用戶界面的概述,2.1 標識符和關鍵字,2.1.1 標識符 標識符是用來標識類名、變量名、方法名、數(shù)組名、文件名的有效字符序列。也就是說,標識符就是一個名字。 標識符以一個字母、下劃線(_)或美元符號($)開始, 隨后也可跟數(shù)字、字母、下劃線或美元符號。標識符區(qū)分大小寫,沒有長度限制,可以為標識符取任意長度的名字。 下面是幾個有效的標識符: birthday age _system_varl $max 下面是幾個非法的標識符: 3max

2、 (變量名不能以數(shù)字開頭) room# (包含非法字符“#”) class (“class”為保留字) 注意:Java較高版本已經(jīng)支持用漢字作為標識符或標識符的一部分。,2.1 標識符和關鍵字,2.1.2 關鍵字 Java中一些賦以特定的含義、并用做專門用途的單詞稱為關鍵字.主要用于標識數(shù)據(jù)類型名或程序構造(construct)名。 Java的關鍵字有: (1)類型(Class Type) package, class, abstract, interface, implements, native, this, super, extends, new, import, instanceof,

3、 public, private, protected, (2)數(shù)據(jù)類型(data type) char, double, enum, float, int, long, short, boolean, void, byte,2.1 標識符和關鍵字,(3)控制類型(Control Type) break, case, continue, default, do, else, for, goto, if, return, switch, while, throw,throws, try, catch, synchronized, final, finally, transient, strict

4、fp (4)存儲類型(Storage Type) register, static (5)其它類型(Other Type) const, volatile,2.1 標識符和關鍵字,關鍵字 的注意事項: (1)所有Java關鍵字都是小寫的,例如:true、false和null為小寫,而不是象在C+語言中那樣為大寫。 (2)無sizeof運算符,因為所有數(shù)據(jù)類型的長度和表示是固定的,與平臺無關,不是象在C語言中那樣數(shù)據(jù)類型的長度根據(jù)不同的平臺而變化。這正是Java語言的一大特點。 (3)goto和const雖然從未被使用,但也被作為Java關鍵字保留了下來。,2.2 常量和變量,2.2.1 常量

5、常量就是指在程序執(zhí)行期間其值不能發(fā)生變化的數(shù)據(jù)。如整型常量123,實型常量1.23,字符常量A,布爾常量true。 定義常量的語法如下: final datatype CONSTNAME=VALUE; final是Java的關鍵字,表示定義的是常量,datatype為數(shù)據(jù)類型,CONSTNAME為常量的名稱,VALUE是常量的值。 【例2-1】定義常量PI,并令PI=3.14。 final double PI = 3.14;,2.2 常量和變量,2.2.2 變量 變量是Java的基本存儲單元。在Java中,使用變量之前需要先聲明變量。變量聲明通常包括3部分,變量類型、變量名和初始值。其中變量的

6、初始值是可選的,聲明變量的語法格式如下: type identifier = value, identifier = value; type是Java的基本類型、類或接口類型的名稱,identifier(標識符)是變量的名,=value表示用具體的值對變量進行初始化,即把某個值賦給變量。 【例2-2】定義3個int型的變量x1 , y1, z1。 int x1,y1,z1;,2.2 常量和變量,2.2.3 變量作用域 變量的定義不但包括變量名和變量類型,同時還包括它的作用域,變量的作用域指明可以訪問該變量的程序代碼的范圍。按作用域來分,變量可分為以下幾種:局部變量、類成員變量、方法參數(shù)和異常處

7、理參數(shù)。,變量作用域,2.2 常量和變量,(1)局部變量定義在方法中或方法內(nèi)的一個代碼塊中,其作用域為它所在的代碼塊。 (2)方法參數(shù)用于將方法外的數(shù)據(jù)傳遞給方法,其作用域就是方法的整個方法體。上面例子中的變量x,就是作用域整個sum方法中。 (3)類成員變量的定義在類里面,但不在類里面的某個方法中,其作用域為整個類。 (4)異常處理參數(shù)將數(shù)據(jù)傳遞給異常處理代碼,其作用域是異常處理部分。,2.3 基本數(shù)據(jù)類型,2.3.1 基本數(shù)據(jù)類型 1整數(shù)類型 分別是:byte(1B),short(2B), int(4B), long(8B) 2浮點類型 浮點型分為兩種,分別是float型(4B)和doub

8、le型(8B) 3字符類型 char (2B) char x1= a ; 4布爾類型boolean 只有兩個值:true和false ,在C語言中允許將數(shù)字值轉換成邏輯值,這在Java編程語言中是不允許的。,2.3 基本數(shù)據(jù)類型,2.3.2 數(shù)據(jù)類型轉化 1自動類型轉換 當把低級別的變量值賦給高級別的變量時,系統(tǒng)自動完成數(shù)據(jù)類型的轉換。 例如: float x = 100; 如果輸出x的值,結果將是100.0。,2.3 基本數(shù)據(jù)類型,2強制類型轉換 當把級別高的變量的值賦給級別低的變量時,需要強制類型轉換。 強制轉換的格式為: (類型名)要轉換的值; 例如:int x = (int)129.3

9、4; 如果輸出x的值,結果將是129。,2.4 運算符和表達式,2.4.1 賦值運算符與賦值表達式 當需要為不同的變量賦值時,就必須使用賦值運算“=”,這里不是“等號”的意思,而是“賦值”的意思,例如: x = 29; 這個語句的作用是將整數(shù)29賦給變量x,使變量x此時擁有的值為29。,2.4 運算符和表達式,2.4.2 算術運算符與算術表達式 算術表達式是由算術運算符將運算數(shù)連接而成的表達式,下表羅列了各種算術運算符。,2.4 運算符和表達式,2.4.3關系運算符與關系表達式 關系運算實際上就是“比較運算”,將兩個值進行比較,判斷比較的結果是否符合給定的條件,如果符合則表達式的結果為true

10、,否則為false。 關系運算符及其說明見下表所示。,2.4 運算符和表達式,2.4.4邏輯運算符與邏輯表達式 邏輯運算符經(jīng)常用來連接關系表達式,對關系表達式進行邏輯運算,因此邏輯運算符的運算對象必須是邏輯型數(shù)據(jù),邏輯表達式的運行結果為邏輯型數(shù)據(jù)。Java中的邏輯運算符有3種,分別是: c = (a b)? 1:2; 執(zhí)行后的c的值為2。,2.5 控制語句,Java中的控制語句有以下幾類。 分支語句 循環(huán)語句 跳轉語句,2.5 控制語句,2.5.1 分支語句 分支語句使得程序在執(zhí)行時可以跳過某些語句不執(zhí)行(可根據(jù)條件表達式的值有選擇地執(zhí)行某些語句)。Java 語言支持if和switch分支語句

11、。 1if-else語句 if-else語句或許是控制程序流程最基本的形式,其中的else是可選的,所以可按下述兩種形式來描述if語句。 (1)沒有else的if語句語法格式 if (條件表達式)語句或塊;,2.5 控制語句,程序的執(zhí)行流程如下圖所示,2.5 控制語句,(2)帶有else的if語句語法格式 if (條件表達式) 語句塊; else 語句塊; 程序的執(zhí)行流程如右圖所示。,2.5 控制語句,2.switch語句 switch語句是多分支的開關語句,它的一般格式定義如下(其中break語句是可選的)。 switch(表達式) case 常量值1: 語句塊 break; case 常量

12、值2: 語句塊 break; case 常量值n: 語句塊 break; default: 語句塊 ,2.5 控制語句,注意: (1)switch后面括號中表達式的值必須是byte,char,short,int類型的常量表達式,而不能用浮點類型或long類型,也不能為一個字符串。 (2)default子句是可選的。 (3)break語句用來在執(zhí)行完一個case分支后,使程序跳出switch語句,即終止switch語句的執(zhí)行。但在特殊情況下,多個不同的case值要執(zhí)行一組相同的運算,這時一組中前面的case可以去掉break。 (4)一個switch語句可以代替多個if-else語句組成的分支語

13、句,而switch語句從思路上顯得更清晰。,2.5 控制語句,Java 語言中提供的循環(huán)語句有: while語句 do-while語句 for語句,2.5 控制語句,2.5.2 循環(huán)語句 1while語句 while語句的格式如下: while(條件表達式) 循環(huán)體語句; 在循環(huán)剛開始時,會計算一次“條件表達式”的值。當條件為假時,將不執(zhí)行循環(huán)體,直接跳轉到循環(huán)體外,執(zhí)行循環(huán)體外的后續(xù)語句;當條件為真時,便執(zhí)行循環(huán)體。每執(zhí)行完一次循環(huán)體,都會重新計算一次條件表達式,當條件為真時,便繼續(xù)執(zhí)行循環(huán)體,直到條件為假才結束循環(huán)。,2.5 控制語句,while語句的結構如下圖所示,2.5 控制語句,2d

14、o-while語句 do-while語句的格式如下: do 循環(huán)體語句; while(條件表達式); do-while循環(huán)與while循環(huán)的不同在于:它先執(zhí)行循環(huán)中的語句,然后再判斷條件是否為真,如果為真則繼續(xù)循環(huán);如果為假,則終止循環(huán)。因此,do-while循環(huán)至少要執(zhí)行一次循環(huán)語句。,2.5 控制語句,do-while語句的結構如下圖所示,2.5 控制語句,3for語句 for語句是三個循環(huán)語句中功能最強,使用最廣泛的一個。for語句的格式如下: for(表達式1;表達式2;表達式3) 循環(huán)體語句; 表達式1一般是一個賦值語句,它用來給循環(huán)控制變量賦初值; 表達式2是一個布爾類型的表達式,

15、它決定什么時候退出循環(huán); 表達式3一般用來修改循環(huán)變量,控制變量每循環(huán)一次后按什么方式變化。 上述三個表達式之間用“;”分開。,2.5 控制語句,for語句的結構如下圖所示,2.5 控制語句,for語句的執(zhí)行過程: (1)在循環(huán)剛開始時,先計算表達式1,在這個過程中,一般完成的是初始化循環(huán)變量或其它變量。 (2)根據(jù)表達式2的值來決定是否執(zhí)行循環(huán)體。表達式2是一個返回布爾值的表達式,若該值為假,將不執(zhí)行循環(huán)體,并退出循環(huán);若該值為真,將執(zhí)行循環(huán)體。 (3)執(zhí)行完一次循環(huán)體后,計算表達式3。在這個過程中一般會修改循環(huán)變量。 (4)轉入第(2)步繼續(xù)執(zhí)行。,2.5 控制語句,2.5.3 跳轉語句

16、1break語句 在Java語言中,break用于強行退出循環(huán),不執(zhí)行循環(huán)中剩余的語句。如果break句出現(xiàn)在嵌套循環(huán)中的內(nèi)層循環(huán),則break只會退出當前的一層循環(huán)。 2continue語句 當程序運行到continue語句時,就會停止循環(huán)體剩余的語句,而回到循環(huán)的開始處繼續(xù)執(zhí)行循環(huán)。,2.6 注釋語句,Java語言提供了3種形式的注釋:單行注釋、多行注釋和文檔注釋。 1單行注釋 注釋格式如下: / 注釋內(nèi)容 該方法進行單行注釋,從符號“/”直到換行為止的所有內(nèi)容均作為注釋而被編譯器忽略。例如下面代碼: int age=24; /定義整型變量age用于保存年齡信息 上述語句中“/定義整型變量

17、age用于保存年齡信息”就是行注釋部分。,2.6 注釋語句,2多行注釋 多行注釋通過“/*”與“*/”符號進行標記,它們必須成對出現(xiàn),在它們之間輸入的注釋內(nèi)容可以換行。注釋格式如下: / * 注釋內(nèi)容1 注釋內(nèi)容2 */ 2文檔注釋 當這類注釋出現(xiàn)在任何聲明(如類的聲明、類的成員變量的聲明或者類的成員方法的聲明)之前時,會被JavaDoc文檔工具讀取作為JavaDoc文檔內(nèi)容,文檔是對代碼結構和功能的描述。該注釋的格式如下: / * * 提示信息1 * 提示信息2 * */,2.7 數(shù)組,在解決實際問題的過程中,往往需要處理大量相同類型的數(shù)據(jù),而且這些數(shù)據(jù)被反復使用。這種情況下,可以考慮使用數(shù)

18、組來處理這種問題。數(shù)組就是相同類型的數(shù)據(jù)按順序組成的一種復合型數(shù)據(jù)類型。通過數(shù)組名和下標來使用數(shù)組中的數(shù)據(jù),下標從0開始。 使用數(shù)組的最大好處是:可以讓一批相同性質的數(shù)據(jù)共用一個變量 名,而不必為每個數(shù)據(jù)命名一個名字。使用數(shù)組不僅使程序書寫大為簡便清晰,可讀性大大提高,而且便于用循環(huán)語句簡單處理這類數(shù)據(jù)。,2.7 數(shù)組,2.7.1 一維數(shù)組 1一維數(shù)組聲明 聲明一維數(shù)組有下列兩種格式: (1)數(shù)組元素類型 數(shù)組名字 ; (2)數(shù)組元素類型 數(shù)組名字; 例如:采用不同的格式分別聲明一維數(shù)組a1和b1。 int a1; int b1; 數(shù)組a1和b1中存放int類型的數(shù)據(jù)。,2.7 數(shù)組,2一維數(shù)

19、組聲初始化 聲明數(shù)組僅為數(shù)組指定數(shù)組名和數(shù)組元素的類型,并沒有為元素分配實際的存儲空間。Java數(shù)組的初始化可以通過直接指定初值的方式來完成,也可以用new操作符來完成。 1)直接指定初值的方式 在聲明一個數(shù)組的同時將數(shù)組元素的初值依次寫入賦值號后的一對花括號內(nèi),給這個數(shù)組的所有元素賦初始值。 例如:int a1=23,-9,38,8,65;,2.7 數(shù)組,2)用關鍵字new初始化數(shù)組 只為數(shù)組分配存儲空間而不對數(shù)組元素賦初值。用關鍵字new來初始化數(shù)組有兩種方式: (1)先聲明數(shù)組,再初始化數(shù)組。格式如下: 類型標識符 數(shù)組名 ; 數(shù)組名=new 類型標識符數(shù)組長度; 第一條語句是數(shù)組的聲明

20、,第二條語句是初始化。數(shù)組長度通常是整型常量, 用以指明數(shù)組元素的個數(shù)。 例如:int a; a = new int9; (2)在聲明數(shù)組的同時用new關鍵字初始化數(shù)組。格式如下: 類型標識符 數(shù)組名 = new 類型標識符數(shù)組長度 ; 或者 類型標識符 數(shù)組名= new 類型標識符數(shù)組長度 ; 例如:int a=new int10;,2.7 數(shù)組,3一維數(shù)組的引用 一維數(shù)組元素的引用格式如下: 數(shù)組名數(shù)組下標 數(shù)組下標的取值范圍是0(數(shù)組長度-1),下標值可以是整數(shù)型常量或整數(shù)型變量表達式。 例如,在有了“int a=new int10;”聲明語句后,下面的兩條賦值語句是合法的: a3=25

21、; a3+6=90; 語句a10=8;卻是錯誤的,因為下標值超過了數(shù)組下標的取值范圍。,2.7 數(shù)組,2.7.2 二維數(shù)組 在Java語言中,把二維數(shù)組實際上看成是其每個數(shù)組元素是一個一維數(shù)組的一維數(shù)組。這里面最根本原因是計算機存儲器的編址是一維的,即存儲單元的編號從0開始一直連續(xù)編到最后一個最大的編號。 1二維數(shù)組聲明 二維數(shù)組的聲明只需要給出兩對方括號,格式如下: 類型標識符 數(shù)組名 ; 類型標識符 數(shù)組名; 其中:類型說明符可以是Java的基本類型、類或接口;數(shù)組名是用戶遵循標識符命名規(guī)則給出的一個標識符;兩個方括號中前面的方括號表示行,后面的方括號表示列。 2二維數(shù)組聲初始化 二維數(shù)組聲明同樣也是為數(shù)組命名和指定其數(shù)據(jù)類型的。它不為數(shù)組元素分配內(nèi)存,只有經(jīng)初始化后才能為其分配存儲空間。二維數(shù)組的初始化也分為直接指定初值和用new操作符兩種方式。,2.7 數(shù)組,2二維數(shù)組聲初始化 1)直接指定初值的方式 在數(shù)組聲明時對數(shù)據(jù)元素賦初值就是用指定的初值對數(shù)組初始化。 例如:int arr1=3, -9,6,8,0,1,11,

溫馨提示

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

評論

0/150

提交評論