Java程序設(shè)計基礎(chǔ)項目化教程 課件 02語法基礎(chǔ)_第1頁
Java程序設(shè)計基礎(chǔ)項目化教程 課件 02語法基礎(chǔ)_第2頁
Java程序設(shè)計基礎(chǔ)項目化教程 課件 02語法基礎(chǔ)_第3頁
Java程序設(shè)計基礎(chǔ)項目化教程 課件 02語法基礎(chǔ)_第4頁
Java程序設(shè)計基礎(chǔ)項目化教程 課件 02語法基礎(chǔ)_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

Java程序設(shè)計基礎(chǔ)

第二章:Java基礎(chǔ)知識主講人丁文本章任務(wù)

編寫Java程序,實現(xiàn)購物結(jié)算并打印購物小票、實現(xiàn)幸運抽獎。如下如所示:學(xué)習(xí)目標掌握Java語言中的常用數(shù)據(jù)類型掌握變量的創(chuàng)建會使用變量掌握Java語言中的運算符的使用數(shù)據(jù)類型01Java語言中數(shù)據(jù)類型分為8種基本數(shù)據(jù)類型和3種引用數(shù)據(jù)類型。Java的數(shù)據(jù)類型數(shù)據(jù)屬于不同類別非洲Thequickbrownfox

TRUE數(shù)據(jù)非數(shù)值數(shù)值整型非整型9002.129999/12/20032.175123陳揚char非數(shù)值數(shù)值整型int…………double非整型String數(shù)據(jù)類型Java常用數(shù)據(jù)類型6/48數(shù)據(jù)類型說明數(shù)據(jù)類型說明char(字符型)用于存儲單個字符如:性別‘男’、‘女’,交通指示燈‘紅’、‘綠’、‘藍’int(整型)用于存儲整數(shù)如:數(shù)字1,一節(jié)課40分鐘double(雙精度)用于存儲小數(shù)如:辣條的價格3.0元,電腦待機時間5.5小時String(字符串)用于存儲一串字符如:“我的愛好編程”,“我喜歡Java程序”

7/48數(shù)據(jù)類型舉例輸出Java課考試最高分:98.5輸出最高分學(xué)員姓名:張三輸出最高分學(xué)員性別:男publicclassTestType{publicstaticvoidmain(String[]args){

doublescore=98.5;Stringname="張三";charsex='男';

System.out.println("本次考試成績最高分:"+score);

System.out.println("最高分得主:"+name);

System.out.println("性別:"+sex);}}變量02變量的定義01變量的創(chuàng)建與使用02變量的命名規(guī)則03CONTENTS目錄變量的定義01CONTENTS目錄內(nèi)存如何存放數(shù)據(jù)?電腦使用內(nèi)存來記憶計算時所使用的數(shù)據(jù)內(nèi)存如何存儲數(shù)據(jù)內(nèi)存像旅館數(shù)據(jù)各式各樣根據(jù)數(shù)據(jù)的需求(即類型)為它申請一塊合適的空間1.開房間(單人間、雙人間、總統(tǒng)套間)2.入住12/48內(nèi)存1000變量:一個數(shù)據(jù)存儲空間的表示98.76不同數(shù)據(jù)存入具有不同內(nèi)存地址的空間,相互獨立變量的定義已經(jīng)將數(shù)據(jù)存入內(nèi)存,但是:怎么找到存入的數(shù)據(jù)?100013/48變量的定義內(nèi)存地址不好記,怎么辦?通過內(nèi)存中小房間的名字找到數(shù)據(jù)存儲的位置通過變量名可以簡單快速地找到它存儲的數(shù)據(jù)房間房間名字房間類型入住的客人變量變量名變量類型變量值對應(yīng)問題14/48變量的定義01變量的創(chuàng)建與使用02變量的命名規(guī)則03CONTENTS目錄變量的創(chuàng)建與使用02CONTENTS目錄變量的創(chuàng)建與使用使用變量的步驟第一步:聲明變量,即“根據(jù)數(shù)據(jù)類型在內(nèi)存申請空間”第二步:賦值,即“將數(shù)據(jù)存儲至對應(yīng)的內(nèi)存空間”第一步和第二步可以合并第三步:使用變量,即“取出數(shù)據(jù)使用”數(shù)據(jù)類型變量名;double

price;變量名=數(shù)值;price=3.5;數(shù)據(jù)類型變量名=數(shù)值;double

price=3.5;17/48publicclassMyVariable{publicstaticvoidmain(String[]args){

doublemoney;//1.聲明一個變量

money=1000;//2.賦值

}}數(shù)據(jù)類型變量名內(nèi)存空間存的數(shù)值System.out.println(money);//3.使用變量doublemoney=1000;//合二為一在內(nèi)存中存儲辣條價格3.5元顯示內(nèi)存中存儲數(shù)據(jù)的值問題變量的創(chuàng)建與使用演示示例1:使用變量存儲數(shù)據(jù)18/48變量的定義01變量的創(chuàng)建與使用02變量的命名規(guī)則03CONTENTS目錄變量的命名規(guī)則03CONTENTS目錄Java語言中,變量命名要符合一定規(guī)則money、score、name、sex1、字母2、下劃線‘_’3、‘$’符號首字母任意多的:1、數(shù)字2、字母3、下劃線‘_’4、‘$’符號其余部分變量名變量命名規(guī)則經(jīng)驗變量命名規(guī)范:簡短且能清楚地表明變量的作用,通常第一個單詞的首字母小寫,其后單詞的首字母大寫。例如:myScore!實際開發(fā)時,為了易于維護,盡量使用有意義的變量名!21/48變量命名規(guī)則檢查下面這些是否是合法的變量名principalcost_pricemarks_3$lastnamecity123ratediscount%zipcodeCityint提問22/48publicclassError1{publicstaticvoidmain(String[]args){Stringtitle;System.out.println(title);}}Stringtitle;//聲明變量titletitle="Java";//賦值Stringtitle="Java";//聲明變量title并賦值12先聲明變量并賦值,然后才能使用代碼錯誤正確做法常見錯誤3-1代碼閱讀局部變量title可能尚未初始化23/48變量名不能以%開始publicclassError2{publicstaticvoidmain(String[]args){int%hour=18;System.out.println(%hour);}}代碼錯誤常見錯誤3-2標記“%”上有語法錯誤,刪除標記代碼閱讀24/48publicclassError3{publicstaticvoidmain(String[]args){Stringname="張三";Stringname="李四";}}聲明兩個同名變量導(dǎo)致編譯錯誤Stringname="張三";StringName="李四";Java程序區(qū)分大小寫正確方案常見錯誤3-3局部變量name重復(fù)代碼閱讀25/48運算符03算術(shù)運算符01賦值運算符02關(guān)系運算符03CONTENTS目錄邏輯運算符04算術(shù)運算符01CONTENTS目錄算術(shù)運算符操作數(shù)操作數(shù)運算符29/48加減乘除取余+-*/%算術(shù)運算符從控制臺輸入學(xué)員王浩3門課程成績,編寫程序?qū)崿F(xiàn)(1)Java課和SQL課的分數(shù)之差(2)3門課的平均分問題30/48importjava.util.Scanner;publicclassScoreStat{ publicstaticvoidmain(String[]args){ Scannerinput=newScanner(System.in); System.out.print("STB的成績是:"); intstb=input.nextInt();//stb分數(shù)

//省略接收Java分數(shù)和SQL分數(shù)……

intdiffen;//分數(shù)差

doubleavg;//平均分

//省略輸出成績單代碼…… diffen=java-sql;//計算Java課和SQL課的成績差

System.out.println("Java和SQL的成績差:"+diffen); avg=(stb+java+sql)/3; //計算平均分

System.out.println("3門課的平均分是:"+avg); }}算術(shù)運算符3-2指定Scanner類路徑通過鍵盤的輸入得到STB的成績計算成績差和平均分演示示例3:使用算術(shù)運算符31/48Int類型做除法的小技巧問題:如果有一串?dāng)?shù)字123,我要如何快捷的去掉個位數(shù)的3呢?publicclassTest

{publicstaticvoidmain(String[]args){System.out.println(123/10);}}因為整形int沒有小數(shù),也不會四舍五入,所以我們可以用這個小技巧去除數(shù)字的末位大家可以試一下129/10的結(jié)果感興趣的也可以嘗試一下123%10的結(jié)果,這兩種技巧結(jié)合會有什么妙用呢?自動類型轉(zhuǎn)換舉例某班第一次Java考試平均分81.29,第二次比第一次多2分,計算第二次考試平均分?問題

doublefirstAvg=81.29;//第一次平均分

doublesecondAvg;//第二次平均分

intrise=2;secondAvg=firstAvg+rise;

System.out.println("第二次平均分是:"+secondAvg);33/48自動類型轉(zhuǎn)換規(guī)則規(guī)則1:如果一個操作數(shù)為double型,則整個表達式可提升為double型規(guī)則2:滿足自動類型轉(zhuǎn)換的條件兩種類型要兼容數(shù)值類型(整型和浮點型)互相兼容目標類型大于源類型例如:double型大于int型34/48下面語句正確嗎?

intage=19;charsex='女';charresult=age+sex;常見錯誤inta=10;intb=10.2;doublec=10;c=a;intd=c;int不可以自動轉(zhuǎn)換成chardouble不可以自動轉(zhuǎn)化成int代碼閱讀35/48強制類型轉(zhuǎn)換intbefore=20;//apple筆記本市場份額doublerise=9.8;//增長的份額intnow=before+rise;//現(xiàn)在的份額intnow=before+(int)rise;

(類型名)表達式intb=(int)10.2;doublea=10;intc=(int)a;更改為強制類型轉(zhuǎn)換去年Apple筆記本所占市場份額是20,今年增長的市場份額是9.8,求今年所占份額?語法問題編譯出錯:不能完成自動類型轉(zhuǎn)換強制類型轉(zhuǎn)換演示示例4:強制類型轉(zhuǎn)換36/48算術(shù)運算符01賦值運算符02關(guān)系運算符03CONTENTS目錄邏輯運算符04賦值運算符02CONTENTS目錄賦值運算符變量名=表達式;a=(b+3)+(b–1)表達式表達式表達式賦值運算符表達式舉例語法表達式就是符號(如加號、減號)與操作數(shù)(如b,3等)的組合!39/48算術(shù)運算符01賦值運算符02關(guān)系運算符03CONTENTS目錄邏輯運算符04關(guān)系運算符03CONTENTS目錄比較高低、大小、長短等張三的身高是否比李四高籃球是否比雞蛋更大兔子的尾巴和猴子的尾巴一樣長嗎如何比較?為什么使用關(guān)系運算符?使用關(guān)系運算符可以比較高低、大小、長短等!!問題42/48常用的關(guān)系運算符有哪些?>,<==,!=>=,<=什么是關(guān)系運算符張三的身高是否比李四高

假籃球是否比雞蛋更大

真兔子的尾巴和猴子的尾巴一樣長

假由此看出關(guān)系運算符的作用:用來做比較運算比較的結(jié)果:boolean類型問題43/48用什么數(shù)據(jù)類型能表示?張三的身高是否比李四高籃球是否比雞蛋更大兔子的尾巴和猴子的尾巴一樣長嗎boolean(布爾)類型boolean類型的值真:true假:falseboolean類型只有這兩個值?為什么需要boolean類型44/48intliSi=80;//學(xué)員李四成績boolean

isBig;

Scannerinput=newScanner(System.in);

System.out.print("輸入學(xué)員張三成績:");int

zhangSan=input.nextInt();//輸入張三的成績

isBig=zhangSan>liSi;System.out.println("張三成績比李四高嗎?"+isBig);//輸出比較結(jié)果如何使用boolean類型從控制臺輸入張三同學(xué)的成績,與李四的成績(80分)比較,輸出“張三的成績比李四的成績高嗎?“

的判斷結(jié)果定義boolean變量isBig,存儲比較結(jié)果將比較結(jié)果保存在isBig變量中示例問題演示示例5:用boolean變量描述信息45/48邏輯運算符04CONTENTS目錄邏輯運算符邏輯運算符語法47/48與

&&(&)或

||(|)非

!真變假,假變真全假才假全真才真

運算符的優(yōu)先級運算符小結(jié)表達式(3+40%6)>(9/2*3)的結(jié)果是什么?問題最高的優(yōu)先級:小括號,即()最低的優(yōu)先級:賦值運算符,即=優(yōu)先級順序:算術(shù)運算符>關(guān)系運算符>邏輯運算符false當(dāng)運算符比較多,無法確定運算符執(zhí)行順序時,可以使用小括號控制一下順序!48/48學(xué)員操作—實現(xiàn)購物結(jié)算2-1訓(xùn)練要點運算符(*、=)的使用從控制臺輸出信息需求說明用戶可以享受購物8折的優(yōu)惠,請計算實際消費金額指導(dǎo)教員講解需求49/48學(xué)員操作—實現(xiàn)購物結(jié)算2-2實現(xiàn)思路創(chuàng)建Java類Pay聲明變量,存儲信息計算總金額消費總額=各商品的消費金額之和*折扣提示完成時間:20分鐘50/48學(xué)員操作—打印購物小票需求說明結(jié)算時打印購物小票計算此次購物獲得的會員積分練習(xí)完成時間:20分鐘51/48學(xué)員操作—模擬幸運抽獎2-1訓(xùn)練要點算術(shù)運算符(%、/)的使用使用Scanner類接收用戶輸入關(guān)系運算符和bool

溫馨提示

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

評論

0/150

提交評論