電工與電子技術(shù)電子商務(wù)電子課件JAVA語(yǔ)言程序設(shè)計(jì)java02ppt_第1頁(yè)
電工與電子技術(shù)電子商務(wù)電子課件JAVA語(yǔ)言程序設(shè)計(jì)java02ppt_第2頁(yè)
電工與電子技術(shù)電子商務(wù)電子課件JAVA語(yǔ)言程序設(shè)計(jì)java02ppt_第3頁(yè)
電工與電子技術(shù)電子商務(wù)電子課件JAVA語(yǔ)言程序設(shè)計(jì)java02ppt_第4頁(yè)
電工與電子技術(shù)電子商務(wù)電子課件JAVA語(yǔ)言程序設(shè)計(jì)java02ppt_第5頁(yè)
已閱讀5頁(yè),還剩52頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、電子課件JAVA語(yǔ)言程序設(shè)計(jì)java02第2章Java語(yǔ)言結(jié)構(gòu)化程序設(shè)計(jì)2.1標(biāo)識(shí)符、關(guān)鍵字和數(shù)據(jù)類型2.2運(yùn)算符與表達(dá)式2.3語(yǔ)句與流程控制2.4數(shù)組2.5結(jié)構(gòu)化程序設(shè)計(jì)實(shí)例選講本章目錄2.1標(biāo)識(shí)符、關(guān)鍵字和數(shù)據(jù)類型一、注釋與程序段/單行注釋/*單行或多行注釋*/*針對(duì)JDK工具javadoc的注釋*/每個(gè)語(yǔ)句的結(jié)尾處用分號(hào)“;”標(biāo)記;在程序中提倡多寫注釋信息,增強(qiáng)程序的可讀性;由一對(duì)大括號(hào)“”和“”括起來(lái)的若干語(yǔ)句為程序段;可以使用空格符、制表符和回車符編排程序的格式;注意程序的書寫格式,采用縮進(jìn)格式為好;二、字符集和標(biāo)識(shí)符Java語(yǔ)言采用Unicode字符集,Unicode字符是16bi

2、ts存儲(chǔ)格式。Unicode字符集的文檔存儲(chǔ)量增加到ASCII字符集文檔存儲(chǔ)量的2倍。Unicode字符可以表達(dá)的字符數(shù)大幅度增加,可以是包括中文在內(nèi)的多國(guó)文字。Java語(yǔ)言的標(biāo)識(shí)符是以字母、下劃線或$符號(hào)開頭的后面含有字母、下劃線、$符號(hào)和數(shù)字的字符串,標(biāo)識(shí)符的長(zhǎng)度沒(méi)有限制,但Java系統(tǒng)最多可以識(shí)別前255個(gè)字符。標(biāo)識(shí)符可以作為類名、方法名、變量名、語(yǔ)句標(biāo)號(hào)名。Java標(biāo)識(shí)符中的字母是大小寫相關(guān)的。Java標(biāo)識(shí)符使用慣例類和接口類名和接口名通常用名詞,且每個(gè)單詞的首字母大寫;方法方法名用動(dòng)詞開頭的單詞序列,首單詞全部小寫,后面的每個(gè)單詞首字母大寫;常量常量名全部用大寫字母;變量所有的對(duì)象實(shí)

3、例名和全局變量名都使用首單詞全部小寫,后面的每個(gè)單詞首字母大寫的格式;三、Java語(yǔ)言的關(guān)鍵字關(guān)鍵字是由系統(tǒng)定義的一些字符串,代表語(yǔ)言中的特定含義。Java語(yǔ)言共規(guī)定了48個(gè)關(guān)鍵字,Java語(yǔ)言關(guān)鍵字都是全小寫字母的。在標(biāo)識(shí)符中可以包含關(guān)鍵字,但是關(guān)鍵字不能是標(biāo)識(shí)符。abstract boolean break byte casecatch char class continue default do double else extends false final finally float for if implements import instanceof int interface l

4、ong native new null package private protectedpublic return short static superswitch synchronized this throw throws transienttruetryvoidvolatilewhile在Java中保留但已經(jīng)不再使用的關(guān)鍵字:const,goto新增關(guān)鍵字:strictfp、assert、enum。數(shù)據(jù)基本數(shù)據(jù)引用數(shù)據(jù)類(class)接口(interface)數(shù)組數(shù)值型字符型(char)布爾型(boolean)整數(shù)類型(byte,short,int,long)浮點(diǎn)類型(float,do

5、uble)Java數(shù)據(jù)類型四、Java語(yǔ)言基本數(shù)據(jù)類型Java語(yǔ)言共有4類8種基本數(shù)據(jù)類型。邏輯類型:boolean兩種取值:“true”和“false”。注意:在Java語(yǔ)言中,邏輯類型與整數(shù)類型不能進(jìn)行直接轉(zhuǎn)換。這與C和C+語(yǔ)言有明顯的不同。字符類型:char單個(gè)字符被定義為char類型,字符型數(shù)據(jù)必須用單引號(hào)括起來(lái)。Java語(yǔ)言使用Unicode字符,使用16位無(wú)符號(hào)整數(shù)來(lái)表示一個(gè)字符,其取值范圍是065535。Java語(yǔ)言支持轉(zhuǎn)義字符。Java語(yǔ)言把字符串定義為一個(gè)類String類,它不包括在8種基本數(shù)據(jù)類型當(dāng)中,字符串?dāng)?shù)據(jù)必須用雙引號(hào)括起來(lái),如“this is a simple pr

6、ogram!”。整數(shù)類型:byte、short、int和long在Java語(yǔ)言中,共有4種整數(shù)類型的數(shù)據(jù),分別用關(guān)鍵字byte、short、int和long聲明,數(shù)據(jù)長(zhǎng)度分別為8位、16位、32位、64位。這4種整數(shù)類型的數(shù)據(jù)都是有符號(hào)數(shù)。每一種整數(shù)類型的數(shù)都可以用8進(jìn)制、10進(jìn)制或者16進(jìn)制格式來(lái)表示。整數(shù)類型的默認(rèn)型為int型。浮點(diǎn)類型:float和double在Java語(yǔ)言中,共有2種浮點(diǎn)類型的數(shù)據(jù),分別用關(guān)鍵字float和double聲明,其數(shù)據(jù)長(zhǎng)度分別為32位和64位。浮點(diǎn)類型的默認(rèn)型為double型。數(shù)據(jù)類型數(shù)據(jù)長(zhǎng)度取值范圍byte8位-2727-1short16位-215215-

7、1int32位-231231-1long64位-263263-1數(shù)據(jù)類型數(shù)據(jù)長(zhǎng)度f(wàn)loat32位double64位五、引用數(shù)據(jù)類型除了基本數(shù)據(jù)類型之外,Java語(yǔ)言中還允許定義引用數(shù)據(jù)類型,這其中包括數(shù)組、類類型和接口類型,將在后面的相應(yīng)章節(jié)中分別介紹。六、常量常量是在程序運(yùn)行中其值保持不變的量。Java語(yǔ)言中允許用戶使用兩種常量:文字常量(Litearl Constant)如:“37”、“2.1”、“true”、“F”符號(hào)常量(Symbolic Constant)如:static PAI=3.14159 中的“PAI”Java語(yǔ)言的所有基本數(shù)據(jù)類型都可以定義常量。其取值范圍內(nèi)的值都可以被表示

8、成文字常量。用“final”修飾的Java語(yǔ)言標(biāo)識(shí)符為標(biāo)識(shí)符常量,其值在賦值之后將不能再作改動(dòng)。七、變量的聲明和賦值Java語(yǔ)言的所有基本數(shù)據(jù)類型和引用數(shù)據(jù)類型都可以生成相應(yīng)的變量。任何變量、數(shù)組、對(duì)象實(shí)例在使用之前必須經(jīng)過(guò)聲明、創(chuàng)建和初始化,否則將無(wú)法完成任何操作。變量的聲明是要把代表變量的標(biāo)識(shí)符作出說(shuō)明變量的創(chuàng)建是為其分配存儲(chǔ)空間當(dāng)一個(gè)“類變量”或?qū)ο蟊粍?chuàng)建后,系統(tǒng)將自動(dòng)完成初始化工作。還可以通過(guò)對(duì)變量賦值的方式給變量賦予所需要的值。數(shù)據(jù)類型初始值數(shù)據(jù)類型初始值booleanfalselong0Lcharu0000float0.0fbyte0double0.0dshort0各種引用類型nu

9、llint0一、運(yùn)算符Java語(yǔ)言的運(yùn)算符基本上繼承了C和C+的運(yùn)算符體系,從形式到功能,包括優(yōu)先級(jí)和結(jié)合性與C和C+的運(yùn)算符非常相似。Java語(yǔ)言繼承了大部分C和C+的運(yùn)算符,多數(shù)運(yùn)算符都保持了原有的定義。Java取消了結(jié)構(gòu)體成員運(yùn)算符“-”,指針運(yùn)算符“*”和“&”,長(zhǎng)度運(yùn)算符“sizeof”。2.2運(yùn)算符與表達(dá)式成員運(yùn)算符和分隔運(yùn)算符 . () ; , 算術(shù)運(yùn)算符一元算術(shù)運(yùn)算符:+ - -二元算術(shù)運(yùn)算符:+ - * / % 強(qiáng)制類型轉(zhuǎn)換符(type)expressionJava語(yǔ)言不支持變量類型之間的任意轉(zhuǎn)換。Java語(yǔ)言規(guī)定,byte,short,int,long,之間和float,d

10、ouble之間,低存儲(chǔ)位數(shù)據(jù)類型可以直接轉(zhuǎn)換為高存儲(chǔ)位數(shù)據(jù)類型,這在進(jìn)行算術(shù)運(yùn)算時(shí)由系統(tǒng)根據(jù)具體情況自動(dòng)完成。反之則要使用強(qiáng)制類型轉(zhuǎn)換運(yùn)算符進(jìn)行強(qiáng)制類型轉(zhuǎn)換,但是會(huì)降低數(shù)據(jù)精度。除此之外的類型轉(zhuǎn)換都不被允許。這比C和C+要嚴(yán)格得多。字符串連接運(yùn)算符Java語(yǔ)言擴(kuò)展了“+”運(yùn)算符的定義,使其具備連接兩個(gè)字符串的功能,如String first=”James” , last=”Gosling”;String name=first+last;結(jié)果為name=JamesGosling。對(duì)象運(yùn)算符“instanceof”使用格式為instancename instanceof classname其涵義為

11、測(cè)試instance是否為類classname的對(duì)象實(shí)例,是則返回true,否則返回false。位運(yùn)算符一元位運(yùn)算符:二元位運(yùn)算符: 簡(jiǎn)單右移運(yùn)算符“”或稱為無(wú)符號(hào)右移運(yùn)算符,即無(wú)論正數(shù)還是負(fù)數(shù),右移后左邊空出的最高位一概補(bǔ)0。例如1010.2結(jié)果為111010.1010.2結(jié)果為001010.Java語(yǔ)言的位運(yùn)算被限定為整型數(shù)據(jù)。關(guān)系運(yùn)算符關(guān)系運(yùn)算符: = = = !=Java語(yǔ)言中關(guān)系運(yùn)算的結(jié)果是邏輯型,當(dāng)關(guān)系成立時(shí)結(jié)果為true,否則為false。邏輯運(yùn)算符邏輯運(yùn)算符:! & | & |Java語(yǔ)言由于定義了邏輯型或稱布爾型數(shù)據(jù),所以定義了邏輯表達(dá)式。在C和C+中,用整型數(shù)據(jù)替代邏輯型數(shù)

12、據(jù)。再次提醒學(xué)習(xí)過(guò)C和C+的人特別注意,整型數(shù)據(jù)與邏輯型數(shù)據(jù)不存在互換關(guān)系。Java語(yǔ)言改變了C和C+中對(duì)下面6個(gè)運(yùn)算符的定義。“!”運(yùn)算符將原有的“邏輯非”運(yùn)算修改定義為對(duì)邏輯數(shù)據(jù)的“邏輯非”運(yùn)算;“&”運(yùn)算符將原有的“按位與”運(yùn)算修改定義為對(duì)兩個(gè)整數(shù)的“按位與”運(yùn)算和對(duì)兩個(gè)邏輯數(shù)據(jù)的“邏輯與”運(yùn)算;“|”運(yùn)算符將原有的“按位或”運(yùn)算修改定義為對(duì)兩個(gè)整數(shù)的“按位或”運(yùn)算和對(duì)兩個(gè)邏輯數(shù)據(jù)的“邏輯或”運(yùn)算;“”運(yùn)算符將原有的“按位異或”運(yùn)算修改定義為對(duì)兩個(gè)整數(shù)的“按位異或”運(yùn)算和對(duì)兩個(gè)邏輯數(shù)據(jù)的“邏輯異或”運(yùn)算;“&”運(yùn)算符將原有的“邏輯與”運(yùn)算修改定義為對(duì)兩個(gè)邏輯數(shù)據(jù)的“邏輯與”運(yùn)算;“|”運(yùn)

13、算符將原有的“邏輯或”運(yùn)算修改定義為對(duì)兩個(gè)邏輯數(shù)據(jù)的“邏輯或”運(yùn)算。需要提醒,“&”和“|”在計(jì)算邏輯值時(shí),如果僅靠左運(yùn)算數(shù)即可判定運(yùn)算結(jié)果時(shí),右運(yùn)算數(shù)的值將不被計(jì)算,所以它們也被稱為“條件與”和“條件或”。而“&”和“|”在計(jì)算邏輯值時(shí),總是將兩個(gè)運(yùn)算數(shù)的值都計(jì)算出來(lái)之后再作邏輯運(yùn)算,這是它們的差別所在。三元條件運(yùn)算符 a?b:c賦值運(yùn)算符和復(fù)合賦值運(yùn)算符= += -= *= /= %= = = &= |= =二、Java語(yǔ)言運(yùn)算符的優(yōu)先級(jí)與結(jié)合性三、表達(dá)式表達(dá)式是運(yùn)算符、常量和變量的遵循語(yǔ)法規(guī)則的組合。Java語(yǔ)言的表達(dá)式既可以單獨(dú)組成語(yǔ)句,也可以出現(xiàn)在選擇條件測(cè)試、循環(huán)條件測(cè)試、變量說(shuō)明

14、、方法的調(diào)用參數(shù)等場(chǎng)合。2.3語(yǔ)句與流程控制一、結(jié)構(gòu)化程序設(shè)計(jì)中的三種控制結(jié)構(gòu)順序結(jié)構(gòu)選擇結(jié)構(gòu):?jiǎn)芜x擇結(jié)構(gòu)、雙選擇結(jié)構(gòu)、多選擇結(jié)構(gòu)循環(huán)結(jié)構(gòu)一:for循環(huán)循環(huán)結(jié)構(gòu)二:while循環(huán)循環(huán)結(jié)構(gòu)三:do-while循環(huán)2.3語(yǔ)句與流程控制二、選擇語(yǔ)句if-else語(yǔ)句if(boolean_expression)statement_or_blockelsestatement_or_blockswitch語(yǔ)句switch(expression)caseconst1:statements;break;caseconst2:statements;break;.default:statements;其中expr

15、ession只能是整數(shù)類型或字符型,不能是浮點(diǎn)類型?;镜膕witch語(yǔ)句和帶有break語(yǔ)句的switch語(yǔ)句三、循環(huán)語(yǔ)句for循環(huán)語(yǔ)句for(init_expr; boolean; alter_expr)statement_or_blockwhile循環(huán)語(yǔ)句while(boolean)statement_or_blockdo-while循環(huán)語(yǔ)句dostatement_or_blockwhile(boolean)四、break語(yǔ)句和continue語(yǔ)句不帶label的break語(yǔ)句為跳出一個(gè)語(yǔ)句層;帶label的break語(yǔ)句的格式為break labellabel為一個(gè)標(biāo)識(shí)符,標(biāo)定一條語(yǔ)句

16、,帶label的break語(yǔ)句的用法的作用是跳出label所標(biāo)定的塊。不帶label的continue語(yǔ)句與C和C+中完全一樣,可以結(jié)束某個(gè)循環(huán)中的一個(gè)周期的剩余部分,開始下一個(gè)循環(huán);帶label的break語(yǔ)句的格式為continuelabel這里的label仍然是一個(gè)標(biāo)定語(yǔ)句的標(biāo)識(shí)符,帶label的continue語(yǔ)句的作用是結(jié)束標(biāo)號(hào)指定的循環(huán)中的一個(gè)周期的剩余部分,開始下一個(gè)循環(huán)?!纠?.3】帶標(biāo)號(hào)的break語(yǔ)句和continue語(yǔ)句五、return語(yǔ)句這個(gè)語(yǔ)句用在方法體中,它的作用是返回一個(gè)與方法的返回類型一致的一個(gè)類型給方法的調(diào)用,用法格式為return variable_or_e

17、xpression2.4數(shù)組在Java語(yǔ)言中,數(shù)組是一種最簡(jiǎn)單的引用數(shù)據(jù)類型,數(shù)組實(shí)際上是一組變量或?qū)ο髮?shí)例,其類型是相同的??梢栽诔绦蛑新暶鞲鞣N基本類型和引用類型的數(shù)組。與C和C+相似,Java語(yǔ)言數(shù)組在使用時(shí)須經(jīng)過(guò)聲明、創(chuàng)建、初始化三個(gè)步驟。一、數(shù)組的聲明、創(chuàng)建、初始化與釋放數(shù)組的聲明是定義數(shù)組變量標(biāo)識(shí)符,Java語(yǔ)言支持兩種完全等價(jià)的聲明格式:格式一:char s; Point p;格式二:char s; Point p;注意:Java語(yǔ)言在聲明數(shù)組時(shí)不允許指定數(shù)組大小。數(shù)組的創(chuàng)建是為數(shù)組的元素分配存儲(chǔ)空間并進(jìn)行自動(dòng)初始化,創(chuàng)建數(shù)組使用“new”關(guān)鍵字,格式如下:char s; s =

18、new char10;或者將聲明和創(chuàng)建連在一起完成,如char s = new char10;數(shù)組的變量標(biāo)識(shí)符是一個(gè)引用,數(shù)組的創(chuàng)建使得這個(gè)引用指向存儲(chǔ)數(shù)組的內(nèi)存的首地址。除了自動(dòng)初始化之外,還可以采用賦值初始化和靜態(tài)初始化的方法。賦值初始化方法即通過(guò)執(zhí)行語(yǔ)句為數(shù)組的元素賦值。靜態(tài)初始化即是用大括號(hào)將數(shù)組元素的值一一列出的方式,即形如char s = a , c , d , f;的形式。數(shù)組的釋放不需要程序員顯式地操作,不再使用的數(shù)組由系統(tǒng)作為垃圾自動(dòng)處理。二、多維數(shù)組在Java語(yǔ)言中沒(méi)有多維數(shù)組,而是通過(guò)定義數(shù)組的數(shù)組實(shí)現(xiàn)多維數(shù)組,多維數(shù)組的聲明、創(chuàng)建和初始化與一維數(shù)組相似,如int twoDim = new int4;即聲明和創(chuàng)建了一個(gè)有4個(gè)元素的數(shù)組,每個(gè)元素都是一個(gè)數(shù)組。三、不等長(zhǎng)多維數(shù)組特別要指出的是,Java語(yǔ)言與其他高級(jí)語(yǔ)言不同,其多維數(shù)組的每一維的長(zhǎng)度可以不同。即在上面數(shù)組定義基礎(chǔ)上,二維數(shù)組可以如下初始化twoDim0 = new int4;twoDim1 = new int2;twoDim2 = new int3;twoDim3 = new int4;四、數(shù)組邊界與數(shù)組元素的訪問(wèn)數(shù)組長(zhǎng)度length是Java語(yǔ)言中規(guī)定的一個(gè)只讀量,作為數(shù)組的一部分與數(shù)組一同存儲(chǔ),可通

溫馨提示

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

評(píng)論

0/150

提交評(píng)論