JAVA開發(fā)基礎(chǔ)教程_第1頁
JAVA開發(fā)基礎(chǔ)教程_第2頁
JAVA開發(fā)基礎(chǔ)教程_第3頁
JAVA開發(fā)基礎(chǔ)教程_第4頁
JAVA開發(fā)基礎(chǔ)教程_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、河北師范大學(xué)軟件學(xué)院java課程組 java程序設(shè)計程序設(shè)計 第六版第六版河北師范大學(xué)軟件學(xué)院java課程組 本講教學(xué)目標(biāo)本講教學(xué)目標(biāo) 掌握掌握java的數(shù)據(jù)類型、變量常量的數(shù)據(jù)類型、變量常量 掌握運算符及優(yōu)先級掌握運算符及優(yōu)先級 掌握各種控制語句掌握各種控制語句河北師范大學(xué)軟件學(xué)院java課程組 知識回顧知識回顧/本講先行知識本講先行知識 什么是什么是jdk、jre 什么是什么是javase、javaee、javame? 如何輸出如何輸出helloworld河北師范大學(xué)軟件學(xué)院java課程組 本講內(nèi)容本講內(nèi)容 java的變量、常量的變量、常量 java的運算符的運算符 java的語句的語句河

2、北師范大學(xué)軟件學(xué)院java課程組 電腦使用內(nèi)存來記憶計算時所使用的數(shù)據(jù)電腦使用內(nèi)存來記憶計算時所使用的數(shù)據(jù) 內(nèi)存如何存儲數(shù)據(jù)?內(nèi)存如何存儲數(shù)據(jù)? 內(nèi)存像旅館內(nèi)存像旅館 數(shù)據(jù)各式各樣,要先根據(jù)數(shù)據(jù)的需求(即類型數(shù)據(jù)各式各樣,要先根據(jù)數(shù)據(jù)的需求(即類型)為它申請一塊合適的空間)為它申請一塊合適的空間1、開房間(單人間、雙人間、總統(tǒng)套間) 2、入住回顧內(nèi)存如何存放數(shù)據(jù)回顧內(nèi)存如何存放數(shù)據(jù)河北師范大學(xué)軟件學(xué)院java課程組 1000*(1+5%)內(nèi) 存 10001050變量:一個數(shù)據(jù)存儲空間的表示 對于專業(yè)程序員,數(shù)據(jù)存入內(nèi)存不算完: 怎么找到存入的數(shù)據(jù)? 存進(jìn)去還能改嗎?98.76不同數(shù)據(jù)存入具有不

3、同內(nèi)存地址的空間,相互獨立 變量變量在銀行存1000元錢,銀行一年的利息5%,那一年之后錢變成了多少?河北師范大學(xué)軟件學(xué)院java課程組 內(nèi)存地址不好記,怎么辦?內(nèi)存地址不好記,怎么辦? 通過內(nèi)存中小房間的別名找到數(shù)據(jù)存儲的位置通過內(nèi)存中小房間的別名找到數(shù)據(jù)存儲的位置 變量是存儲數(shù)據(jù)的一個基本單元變量是存儲數(shù)據(jù)的一個基本單元房間 房間名字 房間類型 入住的客人 變量 變量名 變量類型 變量值 為什么需要變量為什么需要變量對應(yīng)河北師范大學(xué)軟件學(xué)院java課程組 1、字母2、下劃線_3、$ 符號首字母任意多的:1、數(shù)字2、字母3、下劃線_4、$ 符號其余部分變量名java語言中,變量命名要符合一定

4、規(guī)則money,score,name,sex變量命名規(guī)范:簡短且能清楚地表明變量的作用,通常第一個單詞的首字母小寫,其后單詞的首字母大寫。例如:myscore 變量命名規(guī)則變量命名規(guī)則2-1河北師范大學(xué)軟件學(xué)院java課程組 變量命名規(guī)則變量命名規(guī)則2-2 檢查下面這些是否是合法的變量名檢查下面這些是否是合法的變量名principalcost_pricemarks_3$lastnamecity123ratediscount%zip codecityint河北師范大學(xué)軟件學(xué)院java課程組 變量應(yīng)用變量應(yīng)用1、在內(nèi)存中存儲本金、在內(nèi)存中存儲本金1000元元 2、顯示內(nèi)存中存儲的數(shù)據(jù)的值、顯示內(nèi)存

5、中存儲的數(shù)據(jù)的值public class helloworld public static void main(string args) int money = 1000; /存數(shù)據(jù) 數(shù)據(jù)類型 變量名 內(nèi)存空間存的數(shù)值 system.out.println(money); /使用數(shù)據(jù)河北師范大學(xué)軟件學(xué)院java課程組 變量的聲明和賦值變量的聲明和賦值 使用變量的步驟:使用變量的步驟: 第一步:聲明一個變量第一步:聲明一個變量 第二步:賦值第二步:賦值 第三步:使用變量第三步:使用變量數(shù)據(jù)類型 變量名 = 數(shù)值; 根據(jù)類型開辟空間 將數(shù)據(jù)存入空間 取出數(shù)據(jù)使用 數(shù)據(jù)類型 變量名; 變量名 = 數(shù)

6、值;int money = 1000;int money;money = 1000 ;河北師范大學(xué)軟件學(xué)院java課程組 12常量常量 常量是一種標(biāo)識符,它的值在運行期間恒常量是一種標(biāo)識符,它的值在運行期間恒定不變定不變 常量標(biāo)識符在程序中只能被引用,而不能常量標(biāo)識符在程序中只能被引用,而不能被重新賦值被重新賦值常量常量圓周率圓周率pi圓周率圓周率pi代碼表示代碼表示方式方式public static final double pi = 3.14159265358979323846;用法用法將將ang角度轉(zhuǎn)換成徑度角度轉(zhuǎn)換成徑度 public static double toradians(d

7、ouble ang) return ang / 180.0 * pi;河北師范大學(xué)軟件學(xué)院java課程組 13常量的優(yōu)點常量的優(yōu)點 如果不使用常量,直接在程序中填寫數(shù)字或字符串,將會如果不使用常量,直接在程序中填寫數(shù)字或字符串,將會有什么麻煩?有什么麻煩?public static double toradians(double ang) return ang / 180.0 * 3.14159265358979323846;public static double todegrees(double ang) return ang * 180.0 / 3.1415926535897932384

8、6;public static final double pi = 3.14159265358979323846; / 圓周率圓周率public static double toradians(double ang) return ang / 180.0 * pi;public static double todegrees(double ang) return ang * 180.0 / pi;程序的可讀性變差:用程序的可讀性變差:用戶很難理解數(shù)字或字符戶很難理解數(shù)字或字符串的意思串的意思程序的可維護(hù)性變差:如程序的可維護(hù)性變差:如果數(shù)值改變,則需要在很果數(shù)值改變,則需要在很多地方改動,既麻

9、煩又易多地方改動,既麻煩又易出錯出錯使用常量可以增強(qiáng)程序的可讀性、可維護(hù)性使用常量可以增強(qiáng)程序的可讀性、可維護(hù)性河北師范大學(xué)軟件學(xué)院java課程組 14java中常量的定義規(guī)則中常量的定義規(guī)則 加入加入final 關(guān)鍵字代表常量,關(guān)鍵字代表常量, 加入加入static 關(guān)鍵字代表類關(guān)鍵字代表類變量變量 盡量使用含義直觀的常量來表示那些將在程序中多次出現(xiàn)的盡量使用含義直觀的常量來表示那些將在程序中多次出現(xiàn)的數(shù)字或字符串?dāng)?shù)字或字符串public class student public static final int female = 1; /代表女性代表女性public static fina

10、l int male = 2; /代表男性代表男性private int sex; /性別性別public void setsex(int sex) if(sex=female)system.out.println(這是一名女學(xué)生這是一名女學(xué)生);else if(sex = male)system.out.println(這是一名男學(xué)生這是一名男學(xué)生);this.sex = sex;河北師范大學(xué)軟件學(xué)院java課程組 數(shù)據(jù)類型數(shù)據(jù)類型河北師范大學(xué)軟件學(xué)院java課程組 java基本數(shù)據(jù)類型基本數(shù)據(jù)類型河北師范大學(xué)軟件學(xué)院java課程組 整型字面值整型字面值 在在java中有中有3種方法表示整數(shù)

11、種方法表示整數(shù) 十進(jìn)制十進(jìn)制(09):不需要任何解釋:不需要任何解釋 int i = 99; 八進(jìn)制八進(jìn)制(07):在數(shù)的前面放置一個:在數(shù)的前面放置一個0(零零) int six = 06; /值為值為6 int nine = 011; /值為值為9 十六進(jìn)制十六進(jìn)制(09,af):在數(shù)前放置:在數(shù)前放置0 x或者或者0x int x = 0 x0001; int y = 0xb; int z = 0 x7ffff; 在數(shù)字后面加上在數(shù)字后面加上l或或l,類型定義為,類型定義為long long jo = 1109l; long so = 0 xfffl;河北師范大學(xué)軟件學(xué)院java課程組

12、浮點字面值浮點字面值 浮點字面值默認(rèn)為浮點字面值默認(rèn)為double double d = 333242.00; double e = 987.44d; double f = 423.22d; float類型需要在字面值后面加類型需要在字面值后面加f或或f float jo = 1109.32f; float so = 4423.00f;河北師范大學(xué)軟件學(xué)院java課程組 布爾字面值布爾字面值 布爾值只能定義為布爾值只能定義為true或或false 一定注意使用布爾值的表達(dá)式一定注意使用布爾值的表達(dá)式int x = 1;if(x) /編譯錯誤編譯錯誤int y = 1;if(x+y) boole

13、an b = false;if(b=true) if(b=true) 河北師范大學(xué)軟件學(xué)院java課程組 字符字面值字符字面值 char字面值表記為單引號內(nèi)的單個字符,字符實字面值表記為單引號內(nèi)的單個字符,字符實際上只是一個際上只是一個16位無符號整數(shù),不能直接輸入的位無符號整數(shù),不能直接輸入的字符可以用轉(zhuǎn)義字符字符可以用轉(zhuǎn)義字符 char a = a; char b = 98; system.out.println(b); char n = u004e; system.out.println(n); char d = ”; 盡管字符串不是基本類型,但它能表現(xiàn)為字面值盡管字符串不是基本類型,但

14、它能表現(xiàn)為字面值 string s = “hello”; string hi = “hello”+”world”; 字符串可以和其他基本數(shù)據(jù)類型連接,字符串可以和其他基本數(shù)據(jù)類型連接,返回字符串類返回字符串類型型河北師范大學(xué)軟件學(xué)院java課程組 基本數(shù)據(jù)類型轉(zhuǎn)換基本數(shù)據(jù)類型轉(zhuǎn)換 boolean類型不可轉(zhuǎn)換為其它的數(shù)據(jù)類型類型不可轉(zhuǎn)換為其它的數(shù)據(jù)類型 整型、字符型、浮點型在混合運算中相互轉(zhuǎn)換,轉(zhuǎn)整型、字符型、浮點型在混合運算中相互轉(zhuǎn)換,轉(zhuǎn)換時遵循以下原則換時遵循以下原則 容量小的類型字段轉(zhuǎn)化為容量大的類型,數(shù)據(jù)類型按容容量小的類型字段轉(zhuǎn)化為容量大的類型,數(shù)據(jù)類型按容量大小排序量大小排序(小小

15、- 大大)byte short (char) intlongfloat double 容量大的數(shù)據(jù)類型轉(zhuǎn)換為容量小的數(shù)據(jù)類型,要加上強(qiáng)容量大的數(shù)據(jù)類型轉(zhuǎn)換為容量小的數(shù)據(jù)類型,要加上強(qiáng)制轉(zhuǎn)換符,但制轉(zhuǎn)換符,但可能造成精度降低或溢出可能造成精度降低或溢出,使用時要注意,使用時要注意 多種類型的數(shù)據(jù)混合運算時,系統(tǒng)多種類型的數(shù)據(jù)混合運算時,系統(tǒng)首先自動的將所有數(shù)首先自動的將所有數(shù)據(jù)轉(zhuǎn)化為容量最大的那種數(shù)據(jù)類型據(jù)轉(zhuǎn)化為容量最大的那種數(shù)據(jù)類型,然后再進(jìn)行計算,然后再進(jìn)行計算河北師范大學(xué)軟件學(xué)院java課程組 涉及涉及byte、short和和char類型的運類型的運算算 java中涉及中涉及byte、sh

16、ort和和char類型的類型的運算操作首先會把這些值轉(zhuǎn)換為運算操作首先會把這些值轉(zhuǎn)換為int類型,類型,然后對然后對int類型值進(jìn)行運算,最后得到類型值進(jìn)行運算,最后得到int類型的結(jié)果。因此,如果把兩個類型的結(jié)果。因此,如果把兩個byte類型類型值相加,最后會得到一個值相加,最后會得到一個int類型的結(jié)果類型的結(jié)果class test public static void main(string args)byte b1=10,b2=20;byte b3=b1+1;/此處即報錯,應(yīng)改為byte b3=(byte)(b1+1);b3=b1+b2;/此處即報錯,應(yīng)改為byte b3=(byte)

17、(b1+b2); 河北師范大學(xué)軟件學(xué)院java課程組 運算符運算符 算術(shù)運算符算術(shù)運算符 關(guān)系運算符關(guān)系運算符 邏輯運算符邏輯運算符 賦值運算符賦值運算符河北師范大學(xué)軟件學(xué)院java課程組 某班的某班的a學(xué)員學(xué)員java成績是成績是80分,分,b學(xué)員與學(xué)員與a學(xué)員成績相同,輸出學(xué)員成績相同,輸出b學(xué)員成績學(xué)員成績int ascore = 80; int bscore;ascore = bscore;system.out.println(bscore);bscore = ascore ; /將右邊的值給左邊的變量 賦值運算符 ascorebscore8080副本賦值運算符賦值運算符2-1代碼錯誤

18、河北師范大學(xué)軟件學(xué)院java課程組 變量名 表達(dá)式;賦值運算符賦值運算符2-2z = ( x * 2 ) + ( 5 y ) 表達(dá)式 表達(dá)式 表達(dá)式 賦值運算符賦值運算符表達(dá)式舉例河北師范大學(xué)軟件學(xué)院java課程組 算術(shù)運算符算術(shù)運算符 基本的算術(shù)運算基本的算術(shù)運算操作數(shù)操作數(shù)運算符河北師范大學(xué)軟件學(xué)院java課程組 關(guān)系運算符關(guān)系運算符 常用的關(guān)系運算符有哪些:常用的關(guān)系運算符有哪些: ,=,=大象的壽命大象的壽命 = 90 ) system.out.println(優(yōu)秀優(yōu)秀); else if (score = 80 ) system.out.println(良好良好); else if

19、(score = 60 ) system.out.println(中等中等); else system.out.println(差差); 大于等于大于等于90分分大于等于大于等于60分,小于分,小于80分分小于小于60分分大于等于大于等于80分,小于分,小于90分分河北師范大學(xué)軟件學(xué)院java課程組 switch (表達(dá)式表達(dá)式) case 常量常量 1:語句語句;break; case 常量常量 2:語句語句;break;default:語句語句;switch結(jié)構(gòu)結(jié)構(gòu)switch結(jié)構(gòu)結(jié)構(gòu)計算表達(dá)式的值計算表達(dá)式的值如果等于常量如果等于常量1 如果等于常量如果等于常量2 如果沒有找到匹配的值如

20、果沒有找到匹配的值 河北師范大學(xué)軟件學(xué)院java課程組 常見錯誤常見錯誤string day = 星期一星期一;switch (day) case 星期一星期一: system.out.println(星期一:青菜星期一:青菜 ); break; case 星期二星期二: system.out.println(星期二:魚星期二:魚 ); break; default:switch后面小括號中表達(dá)式的后面小括號中表達(dá)式的值必須是整型或字符型值必須是整型或字符型代碼錯誤代碼錯誤河北師范大學(xué)軟件學(xué)院java課程組 比較比較switch和多重和多重if結(jié)構(gòu)結(jié)構(gòu) 相同點相同點 不同點不同點 switch

21、 多重多重if都可以實現(xiàn)多分支結(jié)構(gòu)都可以實現(xiàn)多分支結(jié)構(gòu)只能處理等值的條件判斷,且條件是整型變量或字符只能處理等值的條件判斷,且條件是整型變量或字符變量的等值判斷變量的等值判斷處理在處理在else部分還包含其它部分還包含其它if結(jié)構(gòu),特別適合某個變結(jié)構(gòu),特別適合某個變量處于某個區(qū)間時的情況量處于某個區(qū)間時的情況河北師范大學(xué)軟件學(xué)院java課程組 while循環(huán)循環(huán) 特點:先判斷,再執(zhí)行特點:先判斷,再執(zhí)行while ( 循環(huán)條件循環(huán)條件 ) 循環(huán)操作循環(huán)操作符合條件,循環(huán)繼續(xù)執(zhí)符合條件,循環(huán)繼續(xù)執(zhí)行;否則,循環(huán)退出行;否則,循環(huán)退出循環(huán)中被重復(fù)循環(huán)中被重復(fù)執(zhí)行的操作執(zhí)行的操作int i = 1;

22、while ( i = 30 ) system.out.println(“hello); i +;編碼規(guī)范:編碼規(guī)范:縮進(jìn)、換行縮進(jìn)、換行循環(huán)操作循環(huán)操作 循環(huán)條件循環(huán)條件 真真假假河北師范大學(xué)軟件學(xué)院java課程組 怎樣使用怎樣使用while循環(huán)循環(huán)錄入班級人數(shù)和學(xué)員成績,計算班級學(xué)員的錄入班級人數(shù)和學(xué)員成績,計算班級學(xué)員的平均成績平均成績 循環(huán)條件:目前錄入的成績數(shù)目循環(huán)條件:目前錄入的成績數(shù)目小于總?cè)藬?shù)小于總?cè)藬?shù)循環(huán)操作:錄入學(xué)生成績,并累循環(huán)操作:錄入學(xué)生成績,并累加求和加求和while(i=stunum) system.out.print(請輸入學(xué)號請輸入學(xué)號 + i + 的成績:的

23、成績:); score = input.nextint(); sum = sum + score; i+; avg = sum / stunum ; 河北師范大學(xué)軟件學(xué)院java課程組 do-while循環(huán)循環(huán)do 循環(huán)操作循環(huán)操作 while ( 循環(huán)條件循環(huán)條件 );先執(zhí)行一遍循環(huán)操作先執(zhí)行一遍循環(huán)操作符合條件,循環(huán)繼續(xù)執(zhí)行;否符合條件,循環(huán)繼續(xù)執(zhí)行;否則,循環(huán)退出則,循環(huán)退出特點:先執(zhí)行,再判斷特點:先執(zhí)行,再判斷循環(huán)操作循環(huán)操作 循環(huán)條件循環(huán)條件 真真假假河北師范大學(xué)軟件學(xué)院java課程組 while循環(huán)和循環(huán)和do-while循環(huán)的區(qū)別循環(huán)的區(qū)別 語法不同語法不同 初始情況不滿足循環(huán)

24、條件時初始情況不滿足循環(huán)條件時while循環(huán)一次都不會執(zhí)行循環(huán)一次都不會執(zhí)行do-while循環(huán)不管任何情況都循環(huán)不管任何情況都至少執(zhí)行一次至少執(zhí)行一次do 循環(huán)操作循環(huán)操作 while( 循環(huán)條件循環(huán)條件 );while ( 循環(huán)條件循環(huán)條件 ) 循環(huán)操作循環(huán)操作先判斷,再執(zhí)行先判斷,再執(zhí)行先執(zhí)行,再判斷先執(zhí)行,再判斷比較比較while和和do-while河北師范大學(xué)軟件學(xué)院java課程組 for循環(huán)的語法和執(zhí)行順序循環(huán)的語法和執(zhí)行順序什么是什么是for循環(huán)循環(huán)for( ; ; ) ; 條件為條件為true 循環(huán)體被執(zhí)行循環(huán)體被執(zhí)行 for ( int i = 0 ; i 100 ; i+

25、) system.out.println(“hello); 代碼規(guī)范:代碼規(guī)范:格式對齊、代碼的縮進(jìn)格式對齊、代碼的縮進(jìn) 表達(dá)式表達(dá)式1 表達(dá)式表達(dá)式2 表達(dá)式表達(dá)式3 循環(huán)操作循環(huán)操作 參數(shù)初始化參數(shù)初始化條件判斷條件判斷更新循環(huán)變量更新循環(huán)變量1243河北師范大學(xué)軟件學(xué)院java課程組 為什么需要為什么需要break語句語句int i = 2;switch(i) case 1: system.out.println(星期一星期一); break; case 2: system.out.println(星期二星期二); break; /其他語句其他語句遇到遇到break,立即跳出,立即跳出s

26、witch語句語句回顧回顧break用于用于switch語句語句描述描述4000米長跑比賽米長跑比賽for (int i = 0; i10; i+) 跑跑400米;米; if(不能堅持)(不能堅持) break; /退出比賽退出比賽 第第8圈,圈,快累死了快累死了我要退出我要退出河北師范大學(xué)軟件學(xué)院java課程組 break語句語句 break:改變程序控制流:改變程序控制流 用于用于do-while、while、for中時,可跳出循環(huán)中時,可跳出循環(huán)而執(zhí)行循環(huán)后面的語句而執(zhí)行循環(huán)后面的語句while() break; 跳出整個循環(huán)跳出整個循環(huán)break通常在循環(huán)中與通常在循環(huán)中與條件語句一起

27、使用條件語句一起使用河北師范大學(xué)軟件學(xué)院java課程組 為什么需要為什么需要continue語句語句循環(huán)錄入循環(huán)錄入java課的學(xué)生成績,統(tǒng)計分?jǐn)?shù)大于等于課的學(xué)生成績,統(tǒng)計分?jǐn)?shù)大于等于 80分分的學(xué)生比例的學(xué)生比例1、通過循環(huán),獲得分?jǐn)?shù)大、通過循環(huán),獲得分?jǐn)?shù)大于等于于等于80分的學(xué)生人數(shù)分的學(xué)生人數(shù)num2、判斷:如果成績、判斷:如果成績80,不,不執(zhí)行執(zhí)行num+,直接進(jìn)入下一,直接進(jìn)入下一次循環(huán)次循環(huán)河北師范大學(xué)軟件學(xué)院java課程組 continue語句語句 continue :只能用在循環(huán)里:只能用在循環(huán)里 continue 作用:跳過循環(huán)體中剩余的語句而執(zhí)行作用:跳過循環(huán)體中剩余的語句而執(zhí)行下一次循環(huán)下一次循環(huán)while()

溫馨提示

  • 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

提交評論