第3章運(yùn)算符、表達(dá)式與語(yǔ)句_第1頁(yè)
第3章運(yùn)算符、表達(dá)式與語(yǔ)句_第2頁(yè)
第3章運(yùn)算符、表達(dá)式與語(yǔ)句_第3頁(yè)
第3章運(yùn)算符、表達(dá)式與語(yǔ)句_第4頁(yè)
第3章運(yùn)算符、表達(dá)式與語(yǔ)句_第5頁(yè)
已閱讀5頁(yè),還剩37頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

復(fù)習(xí)Java編寫程序的三步:編輯:UltraEdit編譯:javac運(yùn)行:javaJava環(huán)境配置簡(jiǎn)單的DOS命令練習(xí)寫一個(gè)Java程序,顯示兩個(gè)數(shù)據(jù)的值和交換后的數(shù)值。第3章運(yùn)算符、表達(dá)式與語(yǔ)句本章導(dǎo)讀1.算術(shù)運(yùn)算符和算術(shù)表達(dá)式2.關(guān)系運(yùn)算符與關(guān)系表達(dá)式3.邏輯運(yùn)算符與邏輯表達(dá)式4.賦值運(yùn)算符與賦值表達(dá)式5.移位運(yùn)算符6.位運(yùn)算符7.條件運(yùn)算符8.instanceof運(yùn)算符9.一般表達(dá)式10.語(yǔ)句概述11.分支語(yǔ)句12.循環(huán)語(yǔ)句13.跳轉(zhuǎn)語(yǔ)句3.1算術(shù)運(yùn)算符和算術(shù)表達(dá)式加減運(yùn)算符+擴(kuò)展:字串連接,顯示時(shí)不同類型連接乘、除和求余運(yùn)算符乘、除和求余運(yùn)算的運(yùn)算符號(hào)為*、/、%,都是雙目運(yùn)算符。自增、自減運(yùn)算符

++、--,都是單目運(yùn)算符算術(shù)表達(dá)式算術(shù)混合運(yùn)算的精度精度從“低”到“高”排列的順序是:

byteshortintlongfloatdoubleJava按運(yùn)算符兩邊的操作元的最高精度保留結(jié)果的精度。char型數(shù)據(jù)和整型數(shù)據(jù)運(yùn)算結(jié)果的精度是int。5/2的結(jié)果是2,要想得到2.5,必須寫成5.0/2或5.0f/2bytek=18;‘H’+k的結(jié)果是int型charch=’H’+k;Xcharch=(char)(’H’+k);√3.2關(guān)系運(yùn)算符與關(guān)系表達(dá)式關(guān)系運(yùn)算符的運(yùn)算結(jié)果是boolean型數(shù)據(jù)。(1)大小關(guān)系運(yùn)算符大小關(guān)系運(yùn)算的符號(hào)分別是:>、>=、<、<=(2)等與不等關(guān)系等與不等關(guān)系運(yùn)算的符號(hào)分別是:“==”、“!=”

注意:不要將賦值運(yùn)算符“=”與等號(hào)運(yùn)算符“==”混淆。(3)關(guān)系表達(dá)式結(jié)果為數(shù)值型的變量或表達(dá)式可以通過關(guān)系運(yùn)算符形成關(guān)系表達(dá)式。例如,24>18,(x+y+z)>30+x等。3.3邏輯運(yùn)算符與邏輯表達(dá)式

邏輯運(yùn)算用來實(shí)現(xiàn)boolean型數(shù)據(jù)的邏輯“與”、“或”和“非”運(yùn)算,運(yùn)算結(jié)果是boolean型數(shù)據(jù)。

(1)邏輯“與”和邏輯“或”邏輯“與”和邏輯“或”運(yùn)算的符號(hào)是:&&、||

(2)邏輯“非”邏輯“非”運(yùn)算的符號(hào)是:!

(3)邏輯表達(dá)式結(jié)果為boolean型的變量或表達(dá)式可以通過邏輯運(yùn)算符形成邏輯表達(dá)式。例如,24>18&&4<0x!=0||y!=03.4賦值運(yùn)算符與賦值表達(dá)式

賦值運(yùn)算符:=。注意:不要將賦值運(yùn)算符“=”與等號(hào)運(yùn)算符“==”混淆。3.5移位運(yùn)算符

位運(yùn)算符用來對(duì)二進(jìn)制位進(jìn)行操作,分為左移位操作和右移位操作。

(1)左移位運(yùn)算符左移位運(yùn)算的符號(hào)為:<<a<<n運(yùn)算的結(jié)果是通過將a的所有位都左移n位,每左移一個(gè)位,左邊的高階位上的0或1被移出丟棄,并用0填充右邊的低位。(2)右移位運(yùn)算符右移位運(yùn)算的符號(hào)為:>>a>>n運(yùn)算的結(jié)果是通過將a的所有位都右移n位,每右移一個(gè)位,右邊的低階位被移出丟棄,并用0或1填充左邊的高位,a是正數(shù)用0填充,負(fù)數(shù)時(shí)用1填充。3.6位運(yùn)算符“按位與”運(yùn)算符“&”“按位或”運(yùn)算符“|”“按位非”運(yùn)算符“~”“按位異或”運(yùn)算符“^”3.7條件運(yùn)算符

條件運(yùn)算符是一個(gè)3目運(yùn)算符,它的符號(hào)是:“?:”用法:op1?op2:op312>8?100:200的結(jié)果是10012<8?100:200的結(jié)果是2003.8instanceof運(yùn)算符判斷對(duì)象是否屬于由某個(gè)類聲明。該運(yùn)算符是雙目運(yùn)算符,左面操作元是對(duì)象,右面類。當(dāng)對(duì)象是類創(chuàng)建的對(duì)象時(shí),該運(yùn)算的結(jié)果是true,否則是false。classA{}classBextendsA{}classE2_1{ publicstaticvoidmain(String[]args) { Aa=newA(); Bb=newB(); booleant=binstanceofB; System.out.println(t); t=ainstanceofA; System.out.println(t); t=ainstanceofB; System.out.println(t); }}3.9一般表達(dá)式用運(yùn)算符及操作元連接起來的符合Java規(guī)則的式子。3.10語(yǔ)句概述Java里的語(yǔ)句可分為以下5類:方法調(diào)用語(yǔ)句對(duì)象調(diào)用類中的方法產(chǎn)生行為,如:reader.nextInt();表達(dá)式語(yǔ)句表達(dá)式的最后加上一個(gè)分號(hào)就構(gòu)成語(yǔ)句。分號(hào)是語(yǔ)句不可缺少的部分。如,賦值語(yǔ)句:x=23;復(fù)合語(yǔ)句用“{”和“}”把一些語(yǔ)句括起來構(gòu)成復(fù)合語(yǔ)句,一個(gè)復(fù)合語(yǔ)句也稱作一個(gè)代碼塊控制語(yǔ)句條件分支語(yǔ)句、循環(huán)語(yǔ)句和跳轉(zhuǎn)語(yǔ)句。package語(yǔ)句和import語(yǔ)句

{z=23+x;System.out.println("hello");}注意:復(fù)合語(yǔ)句中變量的作用范圍3.11分支語(yǔ)句條件分支語(yǔ)句(1)if-else語(yǔ)句

if(表達(dá)式){

若干語(yǔ)句

}else{

若干語(yǔ)句

}if(x>0){y=10;z=20;}elsey=100;條件分支語(yǔ)句

(2)多條件if-elseif-else語(yǔ)句

if(表達(dá)式1){

若干語(yǔ)句

}elseif(表達(dá)式2){

若干語(yǔ)句}……elseif(表達(dá)式n){

若干語(yǔ)句}else{

若干語(yǔ)句}if(x>=90){y=“優(yōu)秀”}elseif(x>=80)y=“良好”;elseif(x>=70)y=“中等”;elseif(x>=60)y=“及格”;elsey=“不及格”;switch開關(guān)語(yǔ)句switch(表達(dá)式){case常量值1:若干個(gè)語(yǔ)句

break;

case常量值2:若干個(gè)語(yǔ)句

break;

………case常量值n:若干個(gè)語(yǔ)句

break;

default:若干語(yǔ)句

}條件分支語(yǔ)句注意:switch語(yǔ)句計(jì)算表達(dá)式的值,如果表達(dá)式的值和某個(gè)case后面的常量值相同,就執(zhí)行該case里的若干個(gè)語(yǔ)句。如何沒有遇到break語(yǔ)句,繼續(xù)執(zhí)行后面case所指示的語(yǔ)句。若沒有任何常量值與表達(dá)式的值相同,則執(zhí)行default后面的若干個(gè)語(yǔ)句。其中default可有可無。在同一個(gè)switch語(yǔ)句中,case后的常量值必須互不相同。switch語(yǔ)句中表達(dá)式的值必須是整型或字符型。

例:使用了switch語(yǔ)句,用戶在鍵盤輸入一個(gè)代表月份的整數(shù),程序輸出是該月是在年度的第幾季度。importjava.util.*;publicclassExample3_4{publicstaticvoidmain(Stringargs[]){Scannerreader=newScanner(System.in);System.out.println("輸入一個(gè)月份:");intn=reader.nextInt();switch(n){case1:case2:case3:System.out.printf("%d月屬于第一季度",n);break;

case4:case5:case6:System.out.printf("%d月屬于第二季度",n);break;case7:case8:case9:System.out.printf("%d月屬于第三季度",n);break;case10:case11:case12:System.out.printf("%d月屬于第四季度",n);break;default:System.out.printf("%d不代表月份",n);}}}3.12循環(huán)語(yǔ)句1.while循環(huán)

while語(yǔ)句的一般格式:

while(表達(dá)式){

若干語(yǔ)句

}while語(yǔ)句的執(zhí)行過程:(1)計(jì)算表達(dá)式的值,如果該值是true時(shí),就進(jìn)行(2),否則進(jìn)行(3)。(2)執(zhí)行循環(huán)體,再進(jìn)行(1)(3)結(jié)束while語(yǔ)句的執(zhí)行表達(dá)式

循環(huán)體truefalse圖3.5while循環(huán)語(yǔ)句2.do-while循環(huán)

一般格式:

do{

若干語(yǔ)句

}while(表達(dá)式);

區(qū)別:do-while的循環(huán)體至少被執(zhí)行一次。

循環(huán)體表達(dá)式truefalse圖3.6do-while循環(huán)語(yǔ)句練習(xí):輸入若干個(gè)整數(shù),以0結(jié)束,統(tǒng)計(jì)正整數(shù)的個(gè)數(shù)。分析:實(shí)現(xiàn):例:分別用while和do-while循環(huán)計(jì)算常數(shù)e的近似值:e=1+1/1+1/2!+1/3!+…1/n!(近似到n=1000)

doublesum=0,item=1;inti=1;while(i<=1000){sum=sum+item;i++;item=item*(1.0/i);}sum=sum+1;System.out.println(sum);doublesum=0,item=1;inti=1;do{sum=sum+item;i++;item=item*(1.0/i);}while(i<=1000);sum=sum+1;System.out.println(sum);

3.for循環(huán)

for語(yǔ)句的一般格式:

for(表達(dá)式1;表達(dá)式2;表達(dá)式3){

語(yǔ)句塊

}

for語(yǔ)句的執(zhí)行過程:計(jì)算“表達(dá)式1”,初始化。判斷“表達(dá)式2”的值,若“表達(dá)式2”的值為true,則進(jìn)行(3),否則進(jìn)行(4)。執(zhí)行循環(huán)體,然后計(jì)算“表達(dá)式3”,改變循環(huán)條件,進(jìn)行(2)。結(jié)束for語(yǔ)句的執(zhí)行。一個(gè)數(shù)如果恰好等于它的因子之和,這個(gè)數(shù)就稱為“完數(shù)”。例如,6=1+2+3。使用for循環(huán)計(jì)算出1000內(nèi)的全部完數(shù)intsum,i,j;for(i=1;i<=1000;i++){for(j=1,sum=0;j<=i/2;j++){ if(i%j==0){ sum=sum+j; }}if(sum==i){ System.out.printf("%8d是一個(gè)完數(shù)%n",i);}}練習(xí):輸入10個(gè)整數(shù),統(tǒng)計(jì)正整數(shù)的個(gè)數(shù)。分析:實(shí)現(xiàn):3.13跳轉(zhuǎn)語(yǔ)句跳轉(zhuǎn)語(yǔ)句是用關(guān)鍵字break或continue加上分號(hào)構(gòu)成的語(yǔ)句。如:break;在循環(huán)體的執(zhí)行中執(zhí)行了break語(yǔ)句,那么整個(gè)循環(huán)語(yǔ)句結(jié)束。在某次循環(huán)體

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論