《Java就業(yè)培訓(xùn)教程》語言基礎(chǔ)ppt課件_第1頁
《Java就業(yè)培訓(xùn)教程》語言基礎(chǔ)ppt課件_第2頁
《Java就業(yè)培訓(xùn)教程》語言基礎(chǔ)ppt課件_第3頁
《Java就業(yè)培訓(xùn)教程》語言基礎(chǔ)ppt課件_第4頁
《Java就業(yè)培訓(xùn)教程》語言基礎(chǔ)ppt課件_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、張孝祥IT課堂Java就業(yè)培訓(xùn)教程主講教師:第二講 java 編程根底 Java的根本語法(1)java代碼的位置 java是嚴(yán)厲區(qū)分大小寫的 java是一種自在格式的言語 代碼分為構(gòu)造定義語句和功能執(zhí)行語句功能執(zhí)行語句的最后必需用分號(hào)終了 java程序有三種注釋方式j(luò)ava中的標(biāo)識(shí)符 java中的包、類、方法、參數(shù)和變量的名字,可由恣意順序的大小寫字母、數(shù)字、下劃線(_)和美圓符號(hào)($)組成,但標(biāo)識(shí)符不能以數(shù)字開頭,不能是關(guān)鍵字。合法的標(biāo)識(shí)符: indentifierusernameuser_name_userName$username非法的標(biāo)識(shí)符:class98.3Hello World

2、Java的根本語法(2)java的關(guān)鍵字 注:java 無sizeof ,goto, const 關(guān)鍵字,但不能用goto const作為變量名abstractdoimplementprivatethisbooleandoubleimportprotectedthrowbreakelseinstanceof publicthrowsbyteextendintreturntransientcasefalseinterfaceshorttruecatchfinallongstatictrycharfianllynativestrictfpvoidclassfloatnewsupervolatile

3、continuefornullswitchwhiledefaultif package synchronizedjava中的常量1 整型常量十進(jìn)制12 ,十六進(jìn)制 0 x12,八進(jìn)制012長(zhǎng)整型常量13L單精度浮點(diǎn)數(shù) 5.1f,.4f ,2e3f ,0f雙精度浮點(diǎn)數(shù) 5.1,.4,2e-3,0d布爾常量 true和false java中的常量2字符常量 a , 8, u0027 r表示接受鍵盤輸入,相當(dāng)于按下了回車鍵;n是換行;t是制表符,相當(dāng)于table鍵;b是退格鍵,相當(dāng)于Back Space;是單引號(hào),而“是雙引號(hào);是一個(gè)斜杠“。字符串常量 “Hello World“,123, Welc

4、ome nXXXnull常量 null常量只需一個(gè)值,用null表示,表示對(duì)象的援用為空 變量的概念與作用 變量就是系統(tǒng)為程序分配的一塊內(nèi)存單元,用來存儲(chǔ)各種類型的數(shù)據(jù)。根據(jù)所存儲(chǔ)的數(shù)據(jù)類型的不同,有各種不同類型的變量。變量名代表這塊內(nèi)存中的數(shù)據(jù) 。int x=0,y; y=x+3;執(zhí)行這兩條語句的過程中,內(nèi)存分配及變化情況。X在被取值前必需被初始化。java的變量類型 數(shù)據(jù)類型根本數(shù)據(jù)類型援用數(shù)據(jù)類型數(shù)值型字符型(char)布爾型boolean整數(shù)類型(byte, short, int, long)浮點(diǎn)類型(float, double)類(class)接口(interface)數(shù)組變量字節(jié)大

5、小及有效取值范圍 byte占用一個(gè)字節(jié),數(shù)字大小為-2727-1short占用兩個(gè)字節(jié),數(shù)字大小為-215215-1 int占用四個(gè)字節(jié),數(shù)字大小為-231231-1 long占用八個(gè)字節(jié),數(shù)字大小為-263263-1 float占用四個(gè)字節(jié),數(shù)字大小為1.4E-453.4E+38 , -1.4E-45-3.4E+38 。用二進(jìn)制的指數(shù)方式表示一個(gè)浮點(diǎn)數(shù)的格式,如:101*22 , 101*2-3double占用八個(gè)字節(jié),數(shù)字大小為4.9E-3241.7E+308, -4.9E-324-1.7E+308 。char占兩個(gè)字節(jié),數(shù)字大小為0216-1,是unicode編碼。字符的本來面目,我們?yōu)?/p>

6、什么可以直接將一個(gè)數(shù)字賦給字符變量。Boolean占一個(gè)字節(jié),其取值只需兩個(gè),true和false。浮點(diǎn)數(shù)在內(nèi)存中的表示方式 在JDK文檔中查找Float. intBitsToFloat的闡明打印出最大數(shù)和最小數(shù)及它們的二進(jìn)制格式打印出無窮大與NaN及它們的二進(jìn)制格式分析0 x50000000所對(duì)應(yīng)的浮點(diǎn)數(shù) 類型轉(zhuǎn)化 自動(dòng)類型轉(zhuǎn)換也叫隱式類型轉(zhuǎn)換 強(qiáng)迫類型轉(zhuǎn)換也叫顯式類型轉(zhuǎn)換 類型轉(zhuǎn)換的原理 及什么時(shí)候要用 強(qiáng)迫類型轉(zhuǎn)換表達(dá)式的數(shù)據(jù)類型自動(dòng)提升一切的byte型、short型和char的值將被提升到int型。假設(shè)一個(gè)操作數(shù)是long型,計(jì)算結(jié)果就是long型;假設(shè)一個(gè)操作數(shù)是float型,計(jì)算結(jié)

7、果就是float型;假設(shè)一個(gè)操作數(shù)是double型,計(jì)算結(jié)果就是double型。分析 System.out.println(a+1)與 System.out.println(“+a+1) 的區(qū)別。變量的生命周期與作用域變量要先定義,后運(yùn)用,但也不是在變量定義后的語句不斷都能運(yùn)用前面定義的變量。我們可以用大括號(hào)將多個(gè)語句包起來構(gòu)成一個(gè)復(fù)合語句,變量只能在定義它的復(fù)合語句中運(yùn)用。public class TestScope public static void main(String args) int x = 12; int q = 96; / x和q都可用 int x = 3;/錯(cuò)誤的定義,J

8、ava中不允許有這種嵌套定義 System.out.println(x is +x); System.out.println(q is +q); q = x; /* 錯(cuò)誤的行,只需x可用, q 超出了作用域范圍 */ System.out.println(x is +x); 函數(shù)函數(shù)子程序的概念與作用。定義一個(gè)函數(shù)的格式 編寫打印三個(gè)矩形的程序用流水帳的方式與用函數(shù)的方式進(jìn)展對(duì)比分析。前往值類型 函數(shù)名參數(shù)類型 方式參數(shù)1,參數(shù)類型 方式參數(shù)2,. 程序代碼 return 前往值;其中:方式參數(shù):在方法被調(diào)用時(shí)用于接納外部傳入的數(shù)據(jù)的變量。參數(shù)類型:就是該方式參數(shù)的數(shù)據(jù)類型。前往值:方法在執(zhí)行

9、終了后返還給調(diào)用它的程序的數(shù)據(jù)。前往值類型:函數(shù)要前往的結(jié)果的數(shù)據(jù)類型。實(shí)參:調(diào)用函數(shù)時(shí)實(shí)踐傳給函數(shù)方式參數(shù)的數(shù)據(jù)。如何了解函數(shù)前往值類型為void的情況 函數(shù)的調(diào)用函數(shù)調(diào)用的格式在函數(shù)中運(yùn)用return提早前往函數(shù)調(diào)用的過程分析函數(shù)的重載 函數(shù)的重載就是在同一個(gè)類中允許同時(shí)存在一個(gè)以上的同名函數(shù),只需它們的參數(shù)個(gè)數(shù)或類型不同即可。 如:public class Testpublic static void main(String args)int isum;double fsum;isum=add(3,5);isum=add(3,5,6);fsum=add(3.2,6.5); public

10、static int add(int x,int y)reutrn x+y;public static int add(int x,int y,int z)return x+y+z;public static double add(double x,double y)return x+y;java中的運(yùn)算符 運(yùn)算符是一種特殊符號(hào),用以表示數(shù)據(jù)的運(yùn)算、賦值和比較,普通由一至三個(gè)字符組成 。運(yùn)算符共分以下幾種: 算術(shù)運(yùn)算符賦值運(yùn)算符比較運(yùn)算符邏輯運(yùn)算符移位運(yùn)算符算術(shù)運(yùn)算符 算術(shù)運(yùn)算符的留意問題“+除字符串相加功能外,還能把非字符串轉(zhuǎn)換成字符串 ,如: “x+123;的結(jié)果是“x123 。 假設(shè)對(duì)負(fù)

11、數(shù)取模,可以把模數(shù)負(fù)號(hào)忽略不記,如:5%-2=1。但被模數(shù)是負(fù)數(shù)就另當(dāng)別論了。對(duì)于除號(hào)“/,它的整數(shù)除和小數(shù)除是有區(qū)別的:整數(shù)之間做除法時(shí),只保管整數(shù)部分而舍棄小數(shù)部分。 int x=3510;x=x/1000*1000;實(shí)踐運(yùn)轉(zhuǎn)結(jié)果是3000 ,想想為什么? 算術(shù)運(yùn)算符的運(yùn)用技巧思索題1:某個(gè)培訓(xùn)中心要為新到的學(xué)員安排房間,假設(shè)共有x個(gè)學(xué)員,每個(gè)房間可以住6人,讓他用一個(gè)公式來計(jì)算他們要住的房間數(shù)?答案:(x+5)/6。這種算法還可用在查看留言板的分頁顯示上: 其中x是總共的留言數(shù),6是每頁顯示的留言數(shù),結(jié)果就是總共有多少頁。思索題2:假設(shè)他要讓x的值在0至9之間循環(huán)變化,請(qǐng)寫出相應(yīng)的程序代

12、碼。答案:int x=0;while(true)x = (x+1)%10;賦值運(yùn)算符 注1:在JAVA里可以把賦值語句連在一同,如: x = y = z = 5 ; 在這個(gè)語句中,一切三個(gè)變量都得到同樣的值5。注2 :x += 3等效于x = x + 3,等于*= ,-=,/=依此類推。 比較運(yùn)算符 注1:比較運(yùn)算符的結(jié)果都是boolean型,也就是要么是true,要么是false。注2:比較運(yùn)算符“=不能誤寫成“= ,切記!切記!邏輯運(yùn)算符 注1:邏輯運(yùn)算符用于對(duì)boolean型結(jié)果的表達(dá)式進(jìn)展運(yùn)算,運(yùn)算的結(jié)果都是boolean型 。注2:“&和“&的區(qū)別在于,假設(shè)運(yùn)用前者銜接,那么無論任何

13、情況,“&兩邊的表達(dá)式都會(huì)參與計(jì)算。假設(shè)運(yùn)用后者銜接,當(dāng)“&的左邊為false,那么將不會(huì)計(jì)算其右邊的表達(dá)式?!皘和“|的區(qū)別與“&和“&的區(qū)別一樣。 “&和“&的區(qū)別分析public class TestAnd public static void main(String args) int x=0; int y=3; if(x!=0 & y=y/x) System.out.println(y = +y); 上面例子中,由于while語句的判別條件中的第一個(gè)布爾表達(dá)式是不成立的,程序就不會(huì)判別第二個(gè)布爾表達(dá)式的值,這就是“短路。假設(shè)兩個(gè)表達(dá)式之間用“&來銜接,假設(shè)正好碰到上面所示的特殊情況,

14、程序運(yùn)轉(zhuǎn)時(shí)就會(huì)出錯(cuò) 位運(yùn)算符 任何信息在計(jì)算機(jī)中都是以二進(jìn)制的方式保管的,&,|,除了可以作為邏輯運(yùn)算符,也可以做為位算符,它們對(duì)兩個(gè)操作數(shù)中的每一個(gè)二進(jìn)制位都進(jìn)展運(yùn)算。只需參與運(yùn)算的兩位都為1,&運(yùn)算的結(jié)果才為1,否那么就為0。只需參與運(yùn)算的兩位都為0,|運(yùn)算的結(jié)果才為0,否那么就為1。只需參與運(yùn)算的兩位不同,運(yùn)算的結(jié)果才為1,否那么就為0。我們可以對(duì)數(shù)據(jù)按二進(jìn)制位進(jìn)展移位操作,java的移位運(yùn)算符有三種: 右移 無符號(hào)右移“和“ 區(qū)別的實(shí)例分析public class ShiftTestpublic static void main(String args) int x=0 x800000

15、00; int y=0 x80000000;x=x1;y=y1;System.out.println(“0 x800000001 = + Integer.toHexString(x);System.out.println(“0 x800000001 = + Integer.toHexString(y);運(yùn)轉(zhuǎn)結(jié)果如下:0 x800000001 = c00000000 x800000001 = 40000000十六進(jìn)制與二進(jìn)的對(duì)比0 x8000000016 =1000,0000, 0000, 0000, 0000, 0000, 0000, 000020 xc000000016=1100,0000,

16、 0000, 0000, 0000, 0000, 0000, 00002 0 x4000000016 =0100,0000, 0000, 0000, 0000, 0000, 0000, 00002 移位運(yùn)算的本卷須知及小技巧移位運(yùn)算符適用類型有byte、short、char、int、long對(duì)低于int型的操作數(shù)將先自動(dòng)轉(zhuǎn)換為int型再移位。對(duì)于int型整數(shù)移位ab,系統(tǒng)先將b對(duì)32取模,得到的結(jié)果才是真正移位的位數(shù)。例如:a33和a1結(jié)果是一樣的,a32的結(jié)果還是a原來的數(shù)字。對(duì)于long型整數(shù)移位時(shí)ab ,那么是先將移位位數(shù)b對(duì)64取模。移位不會(huì)改動(dòng)變量本身的值。如a1;在一行語句中單獨(dú)存

17、在,毫無意義 。x1的結(jié)果和x/2的結(jié)果是一樣的,x2和x*4的結(jié)果也是一樣的??傊?,一個(gè)數(shù)左移n位,就是等于這個(gè)數(shù)乘以2的n次方,一個(gè)數(shù)右移n位,就是等于這個(gè)數(shù)除以2的n次方。請(qǐng)思索:如何用程序?qū)崿F(xiàn)求2的x次方。答案:y = 1 x; 運(yùn)算符的優(yōu)先級(jí) 我們可以運(yùn)用括號(hào)改動(dòng)運(yùn)算賦的優(yōu)先級(jí),分析int a =2;int b = a + 3*a;語句的執(zhí)行過程 與int a =2;int b = a + 3*a;語句的執(zhí)行過程的區(qū)別 。如何防止多個(gè)運(yùn)算符帶來的問題對(duì)于int a =2; int b= a + 3 * a+;這樣的語句,b最終等于多少呢?作者實(shí)驗(yàn)得到的結(jié)果是8。對(duì)于int a =2;

18、 int b= (a +)+ 3 * a;這樣的語句,b最終等于多少呢?作者實(shí)驗(yàn)得到的結(jié)果是11。如何防止多個(gè)運(yùn)算符帶來的問題與其去思索其中的緣由,我們還不如將上面的第二句改為幾條語句來實(shí)現(xiàn)我們想要的結(jié)果。不要在一行中編寫太復(fù)雜的表達(dá)式,也就是不要在一行中進(jìn)展太多的運(yùn)算在一行中進(jìn)展太多的運(yùn)算并不能為他帶來什么益處,相反只能帶來害處,它并不比改成幾條語句的運(yùn)轉(zhuǎn)速度快,它除可讀行差外,還極容易出錯(cuò)。對(duì)于優(yōu)先級(jí)順序,讀者不用刻意去記,有個(gè)印象就行假設(shè)他真實(shí)弄不清這些運(yùn)算先后關(guān)系的話,就用括號(hào)或是分成多條語句來完成他想要的功能,由于括號(hào)的優(yōu)先級(jí)是最高的,這也是軟件編碼規(guī)范的一個(gè)要求。程序的流程控制 順

19、序構(gòu)造選擇構(gòu)造循環(huán)構(gòu)造顧名思義,順序構(gòu)培育是程序從上到下一行一行執(zhí)行的構(gòu)造,中間沒有判別和跳轉(zhuǎn),直到程序終了。 if語句的選擇構(gòu)造 if (表達(dá)式) 語句;if (表達(dá)式) 語句1; else 語句2;if (表達(dá)式1) 語句1;else if (表達(dá)式2) 語句2;else if (表達(dá)式2) 語句3; else 語句n;每個(gè)語句可以是運(yùn)用 組成的復(fù)合語句變量 布爾表達(dá)式?語句1:語句2;If語句還可以嵌套運(yùn)用if (表達(dá)式1) if (表達(dá)式2) 語句1;else語句2; esle if (表達(dá)式2) 語句3;else語句4;嵌套時(shí)最好運(yùn)用確定層次界限,舉例闡明switch語句的選擇構(gòu)造

20、Switch (表達(dá)式)case 常量表達(dá)式1:語句1;case 常量表達(dá)式2:語句2;case 常量表達(dá)式n:語句n;default: 語句n;default語句是可選的,它接受除上面接受值的其他值,通俗的講,就是誰也不要的都?xì)w它。case后面可以跟多個(gè)語句,這些語句可以不用大括號(hào)括起來 。 switch語句判別條件可接受int, byte, char, short型,不可以接受其他類型一旦碰到第一次case匹配,就會(huì)開場(chǎng)順序執(zhí)行以后一切的程序代碼,而不論后面的case條件能否匹配,后面case條件下的代碼都會(huì)被執(zhí)行,直到碰到break語句為止。我們可以利用這個(gè)特點(diǎn)來用同一段語句處置多個(gè)ca

21、se條件 while循環(huán)語句 While (表達(dá)式) 語句;int x=1;while(x3) System.out.println(x=+x); x+; 腳下留心:while表達(dá)式的括號(hào)后面一定不要加“; do-while循環(huán)語句do 語句while (表達(dá)式);public class TestDopublic static void main(String args)int x=3;while(x=0)System.out.println(ok1);x+; int y=3; do System.out.println(ok2); y+; while(y=0);do-while循環(huán)語句編寫

22、一個(gè)程序,這個(gè)程序不斷地讀取從鍵盤上輸入的字符,直到讀到字符q時(shí),程序終了。提示:調(diào)用System.in.read();可以讀取到一個(gè)從鍵盤上輸入字符對(duì)應(yīng)的整數(shù)。經(jīng)過這個(gè)程序,他一定能領(lǐng)會(huì)到在什么樣的情況下,用do-while循環(huán)語句比while循環(huán)語句方便。for循環(huán)語句 for(表達(dá)式1;表達(dá)式2 ;表達(dá)式3) 語句for(int x=1;x10;x+) System.out.println(x=+x); 等效于int x=1;for(;x10;x+) System.out.println(x=+x); 等效于int x=1;for(;x= 10)break; System.out.println(x=+x); x+;break語句 break語句可以中止循環(huán)中的子語句和switch語句。一個(gè)無標(biāo)號(hào)的brea

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論