版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
本章內(nèi)容提要1、基本數(shù)據(jù)類型2、表達(dá)式和運(yùn)算符3、程序控制語句4、數(shù)組5、向量(簡介)6、字符串本章內(nèi)容提要1、基本數(shù)據(jù)類型12.1數(shù)據(jù)類型程序=算法+數(shù)據(jù)結(jié)構(gòu)+程序設(shè)計(jì)方法+語言工具和環(huán)境。之所以有數(shù)據(jù)類型,就是因?yàn)橛?jì)算機(jī)存儲不同數(shù)據(jù)類型的方式和空間不同。2.1數(shù)據(jù)類型程序=算法+數(shù)據(jù)結(jié)構(gòu)+程序設(shè)計(jì)方法+語言工具2數(shù)據(jù)類型分類Java定義了8個基本數(shù)據(jù)類型:字節(jié)型,短整型,整型,長整型,字符型,浮點(diǎn)型,雙精度型,布爾型。它們分為4組:整數(shù)型(byte,short,int,long)浮點(diǎn)數(shù)型(float,double)字符型(char)布爾型(boolean)數(shù)據(jù)類型分類Java定義了8個基本數(shù)據(jù)類型:字節(jié)型3數(shù)據(jù)類型的分類數(shù)據(jù)類型的分類4【例2-1】計(jì)算二個整數(shù)的和:classExample2_1{publicstaticvoidmain(Stringargs[]){intx,y,sum;//變量聲明x=3;y=5;sum=x+y;//求和System.out.println("二數(shù)之和為:"+sum);}}在Java中,使用變量要遵守“先聲明后使用”的原則。
【例2-1】計(jì)算二個整數(shù)的和:classExample25類型轉(zhuǎn)換自動轉(zhuǎn)換
需要滿足兩個條件:1、類型相容;2、目標(biāo)數(shù)據(jù)類型比原數(shù)據(jù)類型分配的內(nèi)存空間大(即由低到高)。強(qiáng)制轉(zhuǎn)換
發(fā)生在相容數(shù)據(jù)類型之間(即精度由高到低)。語法形式: (目標(biāo)類型)值基本數(shù)據(jù)類型按精度從“低”到“高”的順序?yàn)椋篵yteshortintlongfloatdouble類型轉(zhuǎn)換自動轉(zhuǎn)換強(qiáng)制轉(zhuǎn)換基本數(shù)據(jù)類型按精度從“低”到“高”的62.2表達(dá)式和運(yùn)算符表達(dá)式是由運(yùn)算符、操作數(shù)和方法調(diào)用按照語言的語法構(gòu)造而成的符號序列。表達(dá)式可用于計(jì)算一個公式,為變量賦值以及幫助控制程序執(zhí)行流程。2.2表達(dá)式和運(yùn)算符表達(dá)式是由運(yùn)算符、操作數(shù)和方法調(diào)用按照72.2.1表達(dá)式與運(yùn)算符只有一個運(yùn)算對象的運(yùn)算符稱為一元運(yùn)算符。例如++x是一個一元運(yùn)算符,它是對運(yùn)算對象x自增加1。++x,--x:使用X之前,先使X的值加1(或減1);X++,X--:使用X之后,再使X的值加1(或減1)設(shè)X=5則Y=++XY的值為6;Y=X++Y的值為5,而X為6。2.2.1表達(dá)式與運(yùn)算符只有一個運(yùn)算對象的運(yùn)算符稱為8我們可以將運(yùn)算符分成以下幾類:算術(shù)運(yùn)算符;關(guān)系和條件運(yùn)算符;移位和邏輯運(yùn)算符;賦值運(yùn)算符;其他的運(yùn)算符。我們可以將運(yùn)算符分成以下幾類:92.2.2算術(shù)運(yùn)算符Java語言支持所有的浮點(diǎn)型和整型數(shù)進(jìn)行各種算術(shù)運(yùn)算。這些運(yùn)算符為+(加)、-(減)、*(乘)、/(除)以及%(取模)。算術(shù)運(yùn)算符的使用基本上與加減乘除一樣,也是先乘除后加減,必要時(shí)加上括號表示運(yùn)算的先后順序。例如這個程序代碼會在命令行模式下顯示:System.out.println(1+2*3);2.2.2算術(shù)運(yùn)算符Java語言支持所有的浮點(diǎn)型和整型數(shù)102.2.3關(guān)系與邏輯運(yùn)算符2.2.3關(guān)系與邏輯運(yùn)算符11條件運(yùn)算符條件運(yùn)算符122.2.4位運(yùn)算符位運(yùn)算符是對操作數(shù)以二進(jìn)制位為單位進(jìn)行的操作和運(yùn)算,其結(jié)果均為整型量。2.2.4位運(yùn)算符位運(yùn)算符是對操作數(shù)以二進(jìn)制位為單位進(jìn)行13移位和邏輯運(yùn)算符移位和邏輯運(yùn)算符14右移運(yùn)算符“>>”將一個數(shù)的二進(jìn)制位序列右移若干位,移出右端的低位被舍棄,最高位則移入原來高位的值。例如:a=00110111,則a>>2=00001101b=11010011,則b>>2=11110100左移運(yùn)算符“<<”將一個數(shù)的二進(jìn)制位序列左移若干位,高位左移后溢出舍棄,不起作用。右移運(yùn)算符“>>”將一個數(shù)的二進(jìn)制位序列右移若干位,移出右端15當(dāng)移位運(yùn)算符通過對運(yùn)算對象左移位或者右移位來對數(shù)據(jù)執(zhí)行位操作時(shí),一個數(shù)每左移1位,相當(dāng)于這個數(shù)乘以2,每右移1位,相當(dāng)于除以2。例如,設(shè)x=8,則x<<1表示左移1位,相當(dāng)于作x×21的運(yùn)算,其結(jié)果為16。x<<2表示左移2位,相當(dāng)于作x×22的運(yùn)算,其結(jié)果為32。而x>>1表示右移1位,相當(dāng)于作x÷21的運(yùn)算,其結(jié)果為4,x>>2表示右移2位,相當(dāng)于作x÷22的運(yùn)算,其結(jié)果為2。一般地:x<<n表示左移n位,相當(dāng)于作x×2n的運(yùn)算,x>>n表示右移n位,相當(dāng)于作x÷2n的運(yùn)算。邏輯右移運(yùn)算符“>>>”將一個數(shù)的二進(jìn)制位右移若干位,右端移出的低位被舍棄,最高位也是補(bǔ)0,這點(diǎn)與“>>”不同。當(dāng)運(yùn)算對象為數(shù)字的時(shí)候,“&”運(yùn)算符為每一個運(yùn)算對象的每位執(zhí)行按位與功能。它在兩個運(yùn)算對象的對應(yīng)位為1時(shí)結(jié)果才為1,反之結(jié)果都為0。即:0&0=0、0&1=0、1&0=0、1&1=1當(dāng)移位運(yùn)算符通過對運(yùn)算對象左移位或者右移位來對數(shù)據(jù)執(zhí)行位操作16“|”運(yùn)算符執(zhí)行或操作。當(dāng)兩個操作對象都是數(shù)字的時(shí)候,或操作只要有一個運(yùn)算對象為1結(jié)果就為1。即:0|0=0、0|1=1、1|0=1、1|1=1“^”運(yùn)算符執(zhí)行異或操作。異或是指當(dāng)運(yùn)算對象不同時(shí)結(jié)果才為1,否則結(jié)果為0。即:0^0=0、0^1=1、1^0=1、1^1=0“|”運(yùn)算符執(zhí)行或操作。當(dāng)兩個操作對象都是數(shù)字的時(shí)候,或17如果c=a^b那么a=c^b即用同一個數(shù)b對數(shù)a進(jìn)行二次異或運(yùn)算的結(jié)果仍是數(shù)a。如果c=a^b182.3程序控制語句語句分為五類:1、方法調(diào)用語句;2、表達(dá)式語句;3、復(fù)合語句;4、控制語句;5、package和import語句。2.3程序控制語句語句分為五類:192.3.2控制語句通常語句在程序中都是按先后順序執(zhí)行,控制語句用于改變程序執(zhí)行的順序。Java的控制語句有:if-else語句switch語句whiledo-while語句for語句跳轉(zhuǎn)語句異常處理語句2.3.2控制語句通常語句在程序中都是按先后順序執(zhí)行,控制202.3.3if條件語句1、if語句的一般形式if(表達(dá)式){若干語句;}2.3.3if條件語句1、if語句的一般形式212.3.4switch語句switch語句是一個多分支選擇語句,也叫開關(guān)語句。它可以根據(jù)一個整型表達(dá)式有條件地選擇一個語句執(zhí)行。switch(變量名稱或表達(dá)式){case符合數(shù)字或字符:語句塊1;break;case符合數(shù)字或字符:語句塊2;break;default:語句塊3;}2.3.4switch語句switch語句是一個多分支22switch語句首先計(jì)算條件表達(dá)式的值,如果表達(dá)式的值和某個case后面的常量數(shù)值相同,就執(zhí)行該case里的若干條語句,直到break語句為止。若沒有一個常量與表達(dá)式的值相同,則執(zhí)行default后面的若干條語句。default是可有可無的,如果它不存在,并且所有的常量數(shù)值都和表達(dá)式的值不相同,那么switch語句就不進(jìn)行任何處理。switch語句首先計(jì)算條件表達(dá)式的值,如果表達(dá)式的值和某個232.3.5循環(huán)語句1、for循環(huán)語句for循環(huán)語句的語法結(jié)構(gòu)如下:
for(初始條件;終止條件;增量){循環(huán)體;}2.3.5循環(huán)語句1、for循環(huán)語句24圖2.7循環(huán)語句的執(zhí)行過程圖2.7循環(huán)語句的執(zhí)行過程252.4數(shù)組數(shù)組是一組相同類型變量的集合,可以使用共同的名字引用它。2.4數(shù)組數(shù)組是一組相同類型變量的集合,可以使用共同的名262.4.1創(chuàng)建和使用數(shù)組1、聲明數(shù)組(1)聲明一維數(shù)組的格式:數(shù)組元素的類型[]數(shù)組的名字;(2)聲明二維數(shù)組的格式:數(shù)組元素的類型[][]數(shù)組的名字;2.4.1創(chuàng)建和使用數(shù)組1、聲明數(shù)組272、創(chuàng)建數(shù)組一般來說,當(dāng)創(chuàng)建數(shù)組的時(shí)候,使用new操作符,后面跟著數(shù)組元素的數(shù)據(jù)結(jié)構(gòu)。然后將元素的數(shù)目用方括號[]括起來,其格式如下所示:
數(shù)組名字=new數(shù)組元素的類型[數(shù)組元素的個數(shù)];例:
a=newint[10];
2、創(chuàng)建數(shù)組一般來說,當(dāng)創(chuàng)建數(shù)組的時(shí)候,使用283、數(shù)組元素的使用
數(shù)組可以通過下標(biāo)訪問自己的元素:inta[]=newint[10];for(inti=0;i<a.length;i++){a[i]=i;System.out.print(a[i]+"");}3、數(shù)組元素的使用
數(shù)組可以通過下標(biāo)訪問自己的元素:294、確定數(shù)組的大小為了獲得數(shù)組的大小,可以使用下面的代碼:
數(shù)組名.length;注意,不能在length后面加一個圓括號(),否則造成錯誤,因?yàn)閘ength不是一個方法。4、確定數(shù)組的大小為了獲得數(shù)組的大小,可以使用下面的代碼:302.4.2多維數(shù)組的應(yīng)用在Java中,多維數(shù)組(multidimensionalarrays)是由若干行和若干列組成數(shù)組。在人們工作生活與學(xué)習(xí)中,要使用二維表格、矩陣、行列式等,都可以表示成多維數(shù)組。例如:intD[][]=newint[3][4];2.4.2多維數(shù)組的應(yīng)用在Java中,多維數(shù)組(mu31該語句聲明并創(chuàng)建了一個3行4列的數(shù)組D。這個數(shù)組在邏輯上可以表示成一個int類型的矩陣。
也就是說,這個數(shù)組在邏輯上可以表示為:D[0][0]D[0][1]D[0][2]D[0][3]D[1][0]D[1][1]D[1][2]D[1][3]D[2][0]D[2][1]D[2][2]D[2][3]該語句聲明并創(chuàng)建了一個3行4列的數(shù)組D。這個數(shù)組在邏輯上可以322.5向量1、向量(Vector)向量(Vector)是Java.util包(java.util包是專門保存各種常用工具類的類庫)提供的一個工具類。它有類似數(shù)組的順序存儲的數(shù)據(jù)結(jié)構(gòu),但是具有比數(shù)組更強(qiáng)大的功能。2.5向量1、向量(Vector)332、創(chuàng)建向量對象Vector類有三個構(gòu)造函數(shù):(1)Vector():構(gòu)造一個空向量。(2)Vector(inti):用指定的初始化容量構(gòu)造一個空向量。(3)Vector(inti,intj):用指定的初始化容量i和容量增量j構(gòu)造一個空向量。下面的語句就利用構(gòu)造函數(shù)創(chuàng)建了一個向量序列:Vectorv1=newVector(100,10);2、創(chuàng)建向量對象Vector類有三個構(gòu)造函數(shù):34向量的常用方法向量的常用方法352.6字符串的簡單介紹1、字符串聲明與創(chuàng)建下面是聲明并創(chuàng)建字符串的語句:Stringstr;str="thisisaStirng.";也可以將上面二條語句合并為一條語句:Stringstr="thisisaString.";2.6字符串的簡單介紹1、字符串聲明與創(chuàng)建362、字符串操作2、字符串操作37(1)求字符串的長度例:Stringstr1="Hello!";Stringstr2="你身體好嗎?";System.out.println(str1.length());System.out.println(str2.length());(1)求字符串的長度例:38(2)比較兩個字符串String類中有三個方法可以比較兩個字符串是否相同。publicintcompareTo(Stringstr);publicbooleanequals(Objectobj);publicbooleanequalsIgnoreCase(Stringstr);這里需要特別說明,比較二個數(shù)值x、y是否相等,我們使用x==y。而比較二個字符串相等則不能使用“==”來比較。請看下面的程序段:(2)比較兩個字符串String類中有三個方法可以比較兩個39(3)字符串與數(shù)值的轉(zhuǎn)換
字符串str轉(zhuǎn)換為整型:intx=Integer.paresInt(str);字符串str轉(zhuǎn)換為float型:floatn=Integer.paresFloat(str);例如:Stringstr=String.valueOf(123.4);(3)字符串與數(shù)值的轉(zhuǎn)換
字符串str轉(zhuǎn)換為整型:40(4)字符串與字節(jié)數(shù)組的轉(zhuǎn)化要將一個字符串轉(zhuǎn)化為字節(jié)數(shù)組,可用下列方法:byted[]=字符串對象.getBytes();反之,要將一個字節(jié)數(shù)組轉(zhuǎn)化為字符串,則用字符串的構(gòu)造方法就能達(dá)到目的。String(byte[],intoffset,intlength)(4)字符串與字節(jié)數(shù)組的轉(zhuǎn)化要將一個字符串轉(zhuǎn)化為字節(jié)數(shù)組,413、使用StringTokenizer字符分析器有時(shí)我們需要將字符串分解成可被獨(dú)立使用的單詞,這些單詞叫做語言符號。當(dāng)我們分析一個字符串并將字符
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025廣東惠州市龍門龍城創(chuàng)展經(jīng)濟(jì)發(fā)展有限責(zé)任公司招聘5人公考前自測高頻考點(diǎn)模擬試題附答案
- 2025安徽六安市金寨縣消防救援局政府專職消防員招聘10人(公共基礎(chǔ)知識)綜合能力測試題附答案
- 2025廣西北海市合浦縣人民醫(yī)院校園雙選會招聘43人(公共基礎(chǔ)知識)綜合能力測試題附答案
- 2025山東濟(jì)南城投集團(tuán)校園招聘63人模擬試卷附答案
- 2025年安陽縣面向中小學(xué)教師選調(diào)鄉(xiāng)鎮(zhèn)所屬事業(yè)單位工作人員50名(公共基礎(chǔ)知識)綜合能力測試題附答案
- 2025年甘肅昊源工貿(mào)有限責(zé)任公司招聘備考題庫附答案
- 2025年伊春豐林縣人民檢察院公開招聘聘用制書記員2人考試歷年真題匯編附答案
- 2026河北邯鄲市公安局峰峰礦區(qū)分局招錄輔警60人筆試備考試題及答案解析
- 2025年上海科學(xué)院事業(yè)單位工作人員公開招聘備考題庫(第四批)附答案
- 2026重慶水利電力職業(yè)技術(shù)學(xué)院高層次人才招聘筆試備考題庫及答案解析
- 醫(yī)療衛(wèi)生機(jī)構(gòu)6S常態(tài)化管理打分表
- 幾種常用潛流人工濕地剖面圖
- 危險(xiǎn)源辨識、風(fēng)險(xiǎn)評價(jià)、風(fēng)險(xiǎn)控制措施清單-05變電站工程5
- 2023年副主任醫(yī)師(副高)-推拿學(xué)(副高)考試歷年真題摘選帶答案
- 朱子治家格言(朱子家訓(xùn))課件
- 20S517 排水管道出水口
- vpap iv st說明總體操作界面
- 初中一年級(7年級)上學(xué)期生物部分單元知識點(diǎn)
- 長興中學(xué)提前招生試卷
- 2022年基礎(chǔ)教育國家級教學(xué)成果獎評審工作安排
- 生物統(tǒng)計(jì)學(xué)(課堂PPT)
評論
0/150
提交評論