Java語言程序設(shè)計Java基礎(chǔ)_第1頁
Java語言程序設(shè)計Java基礎(chǔ)_第2頁
Java語言程序設(shè)計Java基礎(chǔ)_第3頁
Java語言程序設(shè)計Java基礎(chǔ)_第4頁
Java語言程序設(shè)計Java基礎(chǔ)_第5頁
已閱讀5頁,還剩53頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第二章Java

基礎(chǔ)2.12.22.3標(biāo)識符和關(guān)鍵字?jǐn)?shù)據(jù)類型與常量、變量運(yùn)算符和表達(dá)式2.1

標(biāo)識符和關(guān)鍵字Java語言采用Unicode字符集,采用16位編碼,前256個字符與ASCII相同。1標(biāo)識符標(biāo)識符是用來標(biāo)識變量、常量、方法、類、對象等元素的有效字符序列。Java的標(biāo)識符由字母、數(shù)字、_和$組成,長度不限,但實際命名不宜過長。標(biāo)識符的第一個字符必須為字母、“_”或“$”。標(biāo)識符區(qū)分大小寫。合法的標(biāo)識符:

不合法的標(biāo)識符:name,

s_no,

$2,

boy_number2y,a*b,w/為了提高程序的可讀性,標(biāo)識符最好“見名知義”,而且規(guī)范大小寫的使用方式:①

變量名、對象名、方法名、包名等標(biāo)識符全部采用小寫字母;如果標(biāo)識符由多個單詞構(gòu)成,則首字母小寫,其后單詞的首字母大寫,其余字母小寫。如getAge。②

類名首字母大寫。③

常量名全部字母大寫。2關(guān)鍵字關(guān)鍵字是由Java語言定義的、具有特殊含義的字符序列。用戶只能按照系統(tǒng)規(guī)定的方式使用,不能自行定義。關(guān)鍵字一律用小寫字母表示。2.2

數(shù)據(jù)類型與常量、變量Java的數(shù)據(jù)類型分為2大類:基本數(shù)據(jù)類型和引用數(shù)據(jù)類型。基本數(shù)據(jù)類型是由一種簡單數(shù)據(jù)組成的數(shù)據(jù)類型,其數(shù)據(jù)是不可分解的。例如,整數(shù)類型int的數(shù)據(jù)有34,17等,可以進(jìn)行整除運(yùn)算34/17。基本數(shù)據(jù)類型已由Java預(yù)定義,類型名是關(guān)鍵字,如int,float,char和boolean等?;緮?shù)據(jù)的變量中保存數(shù)據(jù)值,而引用數(shù)據(jù)類型的變量保存地址。Java的引用數(shù)據(jù)類型包括數(shù)組(array)、類(class)和接口(interface)。Java數(shù)據(jù)類型基本類型整型

浮點型字符型布爾型引用類型數(shù)組接口類1

Java基本數(shù)據(jù)類型整數(shù)類型整數(shù)類型數(shù)據(jù)值有負(fù)整數(shù)、零和正整數(shù)。整數(shù)類型又細(xì)分為4種子類型。不同整數(shù)類型的差別在于占用的內(nèi)存空間和數(shù)據(jù)取值范圍的不同。數(shù)據(jù)類型所占字節(jié)取值范圍long(長整型)8-9223372036854775808~9223372036854775807int(整型)4-2147483648~2147483647short(短整型)2-32768~32767byte(位)1-128~127一個整數(shù)的缺省類型為int。要表示一個整數(shù)為long型,在其后加后綴L或l,如345L。Java還提供了3種進(jìn)制的整數(shù)表示形式:十進(jìn)制數(shù)。用0~9之間的數(shù)字表示的數(shù),其首位不能為0。八進(jìn)制數(shù)。用0~7之間的數(shù)字表示的數(shù),以0為前綴。十六進(jìn)制數(shù)。用0~9之間的數(shù)字或a~f,A~F之間的字母表示的數(shù),以0x或0X為前綴。浮點數(shù)類型浮點數(shù)類型有2種表示形式:標(biāo)準(zhǔn)記數(shù)法:由整數(shù)部分、小數(shù)點和小數(shù)部分組成,如12.37科學(xué)記數(shù)法:由尾數(shù)、E或e及階碼組成,也稱為指數(shù)形式,如2.5E4表示2.5×104有2種浮點數(shù)類型:float(單精度浮點數(shù))和double(雙精度浮點數(shù))。浮點數(shù)類型所占字節(jié)取值范圍float(單精度浮點數(shù))4-3.4E38~3.4E38double(雙精度浮點數(shù))8-1.7E308~1.7E308取值范圍及所占用的內(nèi)存大小一個浮點數(shù)缺省類型為double。要表示一個浮點數(shù)為float型,在其后加后綴F或f,如34.5f。字符類型字符類型(char)表示Unicode字符,1個字符占16位。字符類型數(shù)據(jù)表示方法:用單引號括起來的單個字符用Unicode碼表示,前綴是

“\u”Unicide字符集中的控制字符需要通過轉(zhuǎn)義字符表示。轉(zhuǎn)義字符功能Unicode碼\b退格\u0008\t水平制表\u0009\n換行\(zhòng)u000a\f換頁\u000c\r回車\u000d由多個字符組成的字符序列稱為字符串,字符串用雙引號括起來。如"green"就是一個字符串。布爾類型布爾類型(boolean)只有true(真)和false(假)2個值。布爾類型值占1個字節(jié)。數(shù)據(jù)類型所占字節(jié)表示范圍long(長整形)8-9223372036854775808~

9223372036854775807int(整型)4-2147483648~

2147483647short(短整型)2-32768~32767byte(位)1-128~127char(字符)10~256boolean(布爾)1true或falsefloat(單精度)4-3.4E38~

3.4E38double(雙精度)8-1.7E308~

1.7E308Java基本類型表2

常量常量是指在程序運(yùn)行過程中其值始終保持不變的量。Java中的常量有整型、浮點

數(shù)型、字符型、布爾型和字符串型。如26,47.3,‘a(chǎn)’,true,“student”分別是整數(shù)型、浮點數(shù)型、字符型、布爾型和字符

串型常量,常量的這種表示方式稱為直接常量??梢杂脴?biāo)識符表示常量,稱為符號常量。符號常量必須先聲明,后使用。符號常量的聲明方式如下:final[修飾符]類型標(biāo)識符常量名=(直接)常量修飾符是表示該常量使用范圍的權(quán)限修飾符:public,private,protected或缺省。如:final

float

PI=3.14159;final

char

SEX="M";final

int

MAX=100;聲明符號常量的優(yōu)點如下:增加了程序的可讀性,從常量名可知常量的含義。增強(qiáng)了程序的可維護(hù)性,只要在常量的聲明處修改常量的值,就自動修改了程序中所有地方所使用的常量值。3

變量變量是指在程序運(yùn)行過程中其值可以改變的量。變量必須先定義后使用。其格式為:[修飾符]類型標(biāo)識符變量名[=常量];類型標(biāo)識符可以是任意的基本數(shù)據(jù)類型或引用數(shù)據(jù)類型。

變量名必須符合標(biāo)識符的規(guī)定,并習(xí)慣采用小寫字母。如果變量名由多個單詞構(gòu)成,則首字母小寫,其后單詞的首字母大寫,其余字母小寫。取名時最好符合“見名知意”的原則。例如:int

age;

如果聲明中包含“=常量”部分,系統(tǒng)將此常量的值賦予變量,作為變量的初始值。

可以同時聲明同一數(shù)據(jù)類型的多個變量,各變量之間用逗號分隔。以下是合法的變量聲明:

float

x=25.4,y;char

c;boolean

flag1=true,

flag2;int

l,

m;其中,變量x和flag1被賦予初始值,其它變量沒有初始化。例:使用整數(shù)型變量public

class

Integers{public

static

void

main(String

args[]){//八進(jìn)制數(shù)//十進(jìn)制數(shù)//十六進(jìn)制數(shù)int

a=015;int

b=20;int

c=0x25;short

x=30;long

y=123456L;//輸出a的值System.out.println("a="+a);System.out.println("b="+b);System.out.println("c="+c);System.out.println("x="+x);System.out.println("y="+y);}}程序運(yùn)行結(jié)果如下:

a=13b=20c=37x=30y=123456例:使用單精度和雙精度類型變量public

class

Floats{public

static

void

main(String

args[]){float

a=35.45f;double

b=3.56e18;System.out.println("a="+a);System.out.println("b="+b);}}程序運(yùn)行結(jié)果如下:

a=35.45b=3.56E18例:使用字符類型變量public

class

Characters{public

static

void

main(String

args[]){char

ch1=’a’;char

ch2=’B’System.out.println("ch1="+ch1);System.out.println("ch2="+ch2);}}程序運(yùn)行結(jié)果如下:ch1=ach4=B例:使用字符串類型數(shù)據(jù)public

class

Samp2_5{public

static

void

main(String

args[]){String

str1="abc";String

str2="\n";String

str3=

"123";System.out.println("str1="+str1+str2+"str3="+s}}程序運(yùn)行結(jié)果如下:str1=abcstr3=123例:使用邏輯類型變量public

class

Logic{public

static

void

main(String

args[]){boolean

instance1=true;boolean

instance2=false;System.out.println(“邏輯狀態(tài)1=”+instance1+”“+

”邏輯狀態(tài)2="+instance2);}}程序運(yùn)行結(jié)果如下:邏輯狀態(tài)1=true邏輯狀態(tài)2=false2.3

運(yùn)算符和表達(dá)式1運(yùn)算符對數(shù)據(jù)進(jìn)行加工和處理稱為運(yùn)算,表示各種運(yùn)算的符號稱為運(yùn)算符,參與運(yùn)算的數(shù)據(jù)稱為操作數(shù)。根據(jù)操作數(shù)的個數(shù),可以將運(yùn)算符分為單目、雙目和多目運(yùn)算符。單目運(yùn)算符只對1個操作數(shù)運(yùn)算,雙目運(yùn)算符對2個操作數(shù)運(yùn)算。根據(jù)操作數(shù)和運(yùn)算結(jié)果,運(yùn)算符分為:算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、位運(yùn)算符。算術(shù)運(yùn)算符算術(shù)運(yùn)算符完成數(shù)學(xué)上的加、減、乘、除四則運(yùn)算。算術(shù)運(yùn)算符包括雙目運(yùn)算符和單目運(yùn)算符。雙目算術(shù)運(yùn)算符包括+(加)、-(減)、*(乘)、/(除)和%(取余)。例如:23+5//結(jié)果是286*5//結(jié)果是3027/3//結(jié)果是945/4//結(jié)果是119%3//結(jié)果是09%4//結(jié)果是1單目算術(shù)運(yùn)算符包括++(自增)、--(自減)、-(負(fù)號)?!?+”和“--”只能用于整數(shù)類型的變量,而不能用于常量或表達(dá)式。“++”和“--”既可以出現(xiàn)在變量的左邊,也可以出現(xiàn)在變量的右邊。例如:int

j=5;j++;++j;--j;j--;//結(jié)果,j等于6//結(jié)果,j等于7//結(jié)果,j等于6//結(jié)果,j等于5關(guān)系運(yùn)算符關(guān)系運(yùn)算是2個操作數(shù)之間的比較運(yùn)算。關(guān)系運(yùn)算符有:>、<、>=、<=、==和!=?!?=”和“!=”還可用于布爾類型及字符串類型操作數(shù)。字符類型操作數(shù)的比較依據(jù)是其Unicode值,字符串從左向右依此對每個字符比較。關(guān)系運(yùn)算的運(yùn)算結(jié)果是布爾類型值。如果關(guān)系成立,結(jié)果的值為true;否則,結(jié)果的值為false。運(yùn)算符用例功能>a

>

b如果a>b成立,結(jié)果為true;否則,結(jié)果為false>=a>=

b如果a≥b成立,結(jié)果為true;否則,結(jié)果為false<a

<

b如果a<b成立,結(jié)果為true;否則,結(jié)果為false<=a

<=

b如果a≤b成立,結(jié)果為true;否則,結(jié)果為false=

=a

=

=

b如果a=b成立,結(jié)果為true;否則,結(jié)果為false!=a1

!=

b如果a≠b成立,結(jié)果為true;否則,結(jié)果為false關(guān)系運(yùn)算符例如:

23.5>10.445!=45’7’<’6’true!=false’T’<’a’’u’<’9’//結(jié)果是true//結(jié)果是false//結(jié)果是false//結(jié)果是true//結(jié)果是true//結(jié)果是false邏輯運(yùn)算符邏輯運(yùn)算是對布爾類型操作數(shù)進(jìn)行的與、或、非、異或等運(yùn)算,運(yùn)算結(jié)果仍然是布爾類型值。邏輯運(yùn)算符有:&(與)、|(或)、!(非)、^(異或)、&&(條件與)、||(條件或)。ab!aa&b,a&&ba|b,

a||ba^bfalsefalsetruefalsefalsefalsefalsetruetruefalsetruetruetruefalsefalsefalsetruetruetruetruefalsetruetruefalse邏輯運(yùn)算真值表例如:!

truetrue

&

falsetrue

|

false//結(jié)果是false//結(jié)果是false//結(jié)果是true邏輯運(yùn)算用于判斷組合條件是否滿足,例如(age>20)&&

(age<30)

//判斷age的值是否在20~30之間(ch==’b’)||

(ch==’B’)

//判斷ch的值是否為字母’

b’或’B’,位運(yùn)算符位運(yùn)算是對整數(shù)類型的操作數(shù)按二進(jìn)制的位進(jìn)行運(yùn)算,所運(yùn)算結(jié)果仍然是整數(shù)類型值。位運(yùn)算符有:~(位反)、&(位與)、|(位或)、^(位異或)、<<(左移位)、>>(右移位)、>>>(無符號右移位)。ab~aa&ba|ba^b001000011011100011110110位運(yùn)算真值表運(yùn)算符用例功能~~a將a逐位取反&a&ba、b逐位進(jìn)行與操作|a|ba、b逐位進(jìn)行或操作^a^ba、b逐位進(jìn)行異或操作<<a<<ba向左移動b位>>a>>ba向右移動b位>>>a>>>ba向右移動b位,移動后的空位用0填充位運(yùn)算符例如:x=132,y=204;計算~x和x^y的值將整數(shù)轉(zhuǎn)換為二進(jìn)制數(shù)。x=10000100,y=11001100對x按位進(jìn)行取反操作。~

10000100=01111011對x,y按位進(jìn)行異或操 作10000100^

1100110001001000所得結(jié)果:~x=123,x^y=72。賦值運(yùn)算符賦值運(yùn)算用于給變量賦值,形式如下:變量名=表達(dá)式;賦值運(yùn)算的次序是從右向左的,即先計算表達(dá)式的值,再將表達(dá)式的值賦予變量。例如:int

i=3,

j;j=i+2;i=2*j;j=j+4;//i的初始值是3//結(jié)果,j的值是5//結(jié)果,i的值是10//結(jié)果,j的值是9賦值運(yùn)算符還可以與算術(shù)運(yùn)算符、邏輯運(yùn)算符

和位運(yùn)算符組合成復(fù)合賦值運(yùn)算符,使用方法見表。運(yùn)算符用例等價于運(yùn)算符涌例等價于+=x

+=

yx=x+y&=x

&=

yx=x&y-=x-=

yx=x-y|=x

|=

yx=x|y*=x*=

yx=x*y^=x

^=

yx=x^y/=x

/=

yx=x/y<<=x

<<=

yx=x<<y%=x

%=

yx=x%y>>=x

>>=

yx=x>>y>>>=x

>>>=

yx=x>>>y例如:i*=10;等價于i=i*10;條件運(yùn)算符條件運(yùn)算格式如下:表達(dá)式1?表達(dá)式2:表達(dá)式3“?:”稱為條件運(yùn)算符,它是三目運(yùn)算符。如果“表達(dá)式1”的值是true,“表達(dá)式2”的值是最終表達(dá)式的值;如果“表達(dá)式1”的值是false,“表達(dá)式3的值是最終表達(dá)式的值。例如:int

min

,

x=4,

y=20;min=(x<y)?x:y;

//結(jié)果使min取x和y中的較小值,即min的值是4括號運(yùn)算符圓括號運(yùn)算符“()”用于改變表

達(dá)式中運(yùn)算符的運(yùn)算次序。先進(jìn)行括號

內(nèi)的運(yùn)算,再進(jìn)行括號外的運(yùn)算;在有

多層括號的情況下,優(yōu)先進(jìn)行最內(nèi)層括

號內(nèi)的運(yùn)算,再依次從內(nèi)向外逐層運(yùn)算。2表達(dá)式表達(dá)式是用運(yùn)算符將操作數(shù)連接起來的符合語法規(guī)則的運(yùn)算式。例如:int

i=5,

j=10,

k;k=(24+3*i)*j;運(yùn)算符的優(yōu)先級運(yùn)算符描述優(yōu)先級結(jié)合性.

[]

(

)域,數(shù)組,括號1從左至右++

--

-

!

~一元運(yùn)算符2從右至左*

/

%乘,除,取余3從左至右+

-加,減4從左至右<<

>>

>>>位運(yùn)算5從左至右<

<=

>

>=邏輯運(yùn)算6從左至右==

!=邏輯運(yùn)算7從左至右&按位與8從左至右^按位異或9從左至右續(xù)前表運(yùn)算符描述優(yōu)先級結(jié)合性|按位或10從左至右&&邏輯與11從右至左||邏輯或12從左至右?

:條件運(yùn)算13從左至右=

*=

/=

%=+=

-=

<<=>>=

>>>=&=

^=

|=位運(yùn)算14從左至右表達(dá)式的數(shù)據(jù)類型表達(dá)式的數(shù)據(jù)類型由運(yùn)算結(jié)果的數(shù)據(jù)類型決定。例如:int

i=3,

j=21,

k;boolean

f;k=(i+3)*4;f=(i*2)>j;//(i+3)*4是算術(shù)表達(dá)式//(i*2)>j是布爾表達(dá)式例單目操作符實例public

class

OOperator{public

static

void

main(String

args[]){int

i=15,

j1,

j2,

j2,

j4;j1=i++;

//在操作數(shù)的右面System.out.println("i++="+j1);j2=++i;

//在操作數(shù)的左面System.out.println("++i="+j2);j3=--i;System.out.println("--i="+j3);j4=i--;System.out.println(“i--="+j4);System.out.println("i="+i)

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論