




已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第2章 基本數(shù)據(jù)類型與基本操作,本章學習目的:了解和掌握Java語言的基本數(shù)據(jù)類型及相關(guān)內(nèi)容,包括變量、常量、數(shù)據(jù)類型和表達式,掌握如何利用基本數(shù)據(jù)類型、輸入輸出及運算表達式來編寫程序。,2.1 標識符,什么是標識符: 日常工作和生活中碰到的每個實體都有一個名字,便于人們區(qū)別和使用這些實體。程序中的每個元素也需要通過命名去識別和使用。程序設(shè)計語言使用標識符命名程序中的元素,如類、方法、變量、常量和包等。 Java語言命名標識符的規(guī)則如下: 標識符是由字母、數(shù)字、下劃線(_)和美元符($)構(gòu)成的字符序列。 標識符的第1個字符必須是字母、劃線(_)或美元符($),不能是數(shù)字。 標識符不能與關(guān)鍵字相同。 標識符不能是true、false和null。 標識符可以有任意長度。 e.g. $123、WelcomeToJava、area、showInputDialog都是合法的標識符,而2A、d+123、test-01是非法標識符。 注意:Java的標識符的大小寫敏感,即A和a是兩個不同的標識符。,關(guān)鍵字:特殊的含義標識符。 e.g.,2.1 標識符,2.1 標識符:命名習慣,(1)變量和方法通常使用小寫字母命名,如果名字包括多個詞,則連接在一起,使第一個詞的字母小寫而其它詞的首字母大寫,通常變量為名詞或名詞短語,而方法為動詞或運行短語。 e.g. radius、area、circleCenter、print、howInputDialog (2)類通常使用名詞或名詞短語命名,構(gòu)成類名的每個單詞的首字母均大寫。 e.g.Math、ArrayList (3)常量中的字母都大寫,單詞之間用下劃線連接。 e.g.PI和MAX_VALUE,2.2 基本數(shù)據(jù)類型,1. 整數(shù)類型,程序中的整數(shù)類型數(shù)據(jù)能夠進行精確的數(shù)據(jù)存儲與計算,就是說數(shù)據(jù)的表示和運算都是準確的,不會產(chǎn)生誤差。使用整數(shù)類型時,應(yīng)該根據(jù)要描述的數(shù)值大小選擇恰當?shù)卣麛?shù)類型,應(yīng)用最多的是int類型,數(shù)據(jù)值很大情況下選擇long,byte和short通常用于文件讀寫處理等,從而有效控制存儲空間利用率。,2. 浮點類型,浮點類型的數(shù)值在存儲和運算過程中會產(chǎn)生誤差,表示通常所說的實數(shù),其數(shù)值由整數(shù)部分和小數(shù)部分構(gòu)成。兩種浮點類型除存儲位數(shù)不同外,其精度也不同。float類型的有效數(shù)字為67位,double類型的有效數(shù)字為15位。,3. 字符類型,字符類型在程序中用于表示單個字符。高級語言的字符類型能夠表示的字符范圍由使用的字符集決定。為了適應(yīng)計算機應(yīng)用的全球化發(fā)展,Java選用了Unicode編碼字符集。Unicode是一種16位編碼,最大可以容納65535個字符,除傳統(tǒng)的西方字符外,也容納了中文、日文和韓文等亞洲文字。隨著更多的語言文字試圖加入Unicode編碼,原有的16位編碼也很快不夠用了,因此又擴展了32位的編碼。 e.g. IE-“查看”-“編碼”,4. 布爾類型,布爾類型是一種用于表示邏輯判斷結(jié)果的數(shù)據(jù)類型,它只有兩個值:表示“真”的true和表示“假”的false。,2.3 直接量與常量,定義: 直接量是源程序代碼中直接出現(xiàn)的各種數(shù)據(jù)類型的數(shù)值。常量是指在程序中使用標識符進行命名且數(shù)值不能改變的量。它們的共同特點是在程序運行過程中數(shù)值大小不同發(fā)生改變。,2.3.1 直接量,整型直接量 浮點型直接量 字符型直接量 布爾型直接量 字符串直接量,整型直接量,Java語言的整型直接量有3種:十進制、八進制和十六進制。 十進制整數(shù)由數(shù)字09和正號(+)、負號()構(gòu)成,如:1234、-78、0均為十進制直接量; 八進制整數(shù)由數(shù)字07和正號(+)、負號()構(gòu)成。八進制整數(shù)必須用數(shù)字“0”開始,如:027、-0123均為八進制直接量。 十六進制整數(shù)由數(shù)字09、字母AF(可以小寫)和正號(+)、負號()構(gòu)成。十六進制整數(shù)必須用“0x”或“0X”開始,如:-0x123、0xFFFF均為十六進制直接量。 整型直接量默認是int類型的,可以通過在直接量的末尾加字母L或l表示其數(shù)據(jù)類型為long。例如:100表示int型十進制整數(shù),100L表示long型十進制整數(shù)。,浮點型直接量,Java語言的浮點類型直接量有兩種表示形式:十進制小數(shù)點形式和科學記數(shù)法。 十進制小數(shù)點表示法由整數(shù)部分、小數(shù)點和小數(shù)部分組成,整數(shù)部分和小數(shù)部分可以省略,但不能同時省略,被省略部分的值為0。例如:3.14、.12、100.、123.4等。 科學計數(shù)法也稱指數(shù)形式,由十進制小數(shù)點表示部分和指數(shù)部分組成,指數(shù)部分用E或e開始,指數(shù)必須為整數(shù)。例如:1.23E+6、1.0E-10、3.14E5等。 浮點類型直接量默認為double類型,如果要在程序中書寫float類型的直接量,則需要在直接末尾添加F或f。例如:1.23F、1.23E+6F表示float的直接量。,字符型直接量,字符型直接量是用單引號括起來的單個字符。由于使用Unicode編碼,Java程序中單個漢字也作為字符直接使用。例如:A、$、漢、中都是合法的字符直接量。 Java使用轉(zhuǎn)義字符來表示單引號、雙引號和斜線等這些字符的直接量。轉(zhuǎn)義字符由一個“”和控制字符組成。,轉(zhuǎn)義符,布爾型直接量,Java語言的布爾型直接量:true和false,字符串直接量,字符串直接量不屬于基本數(shù)據(jù)類型,是程序設(shè)計過程中使用非常多的一種直接量。字符串是指用一對雙引號括起來的由零個或多個字符組成的字符序列。 長度:Java語言中,字符序列中字符的個數(shù)稱為字符串的長度。 e.g“是一個空字符串,其長度為0;“string“是一個長度為6的字符串;“歡迎學習Java語言“的長度為10。,2.3.2 常量,格式: 修飾符 final 數(shù)據(jù)類型 常量標識符 =常量初始值 舉例: static final int MAX_VALUE = 1000; static final double PI = 3.14159; 慣用: 程序中使用常量代替直接量,可以提高程序的可讀性和易維護性。在上面例子中如果需要將圓周率的精度提高,則只需要修改常量PI的值即可,而如果沒有使用常量,則需要對程序中出現(xiàn)的全部圓周率直接量進行修改。,2.4 變量與賦值運算符,定義: 變量用來存儲程序中需要處理的數(shù)據(jù)。與常量不同,變量的值在程序執(zhí)行過程中會發(fā)生改變。 格式: 數(shù)據(jù)類型 變量名1 ,變量名2 ,; e.g: int lineWidth, x; double radius, interstRate; char ch; boolean flag;,通知: 為進一步加強教風學風建設(shè),學校將于明天(9月18日)進行 課堂考勤抽查,請各學院通知相關(guān)任課教師做好課堂的考勤工作!,關(guān)于浮點的補充知識,標準(IEEE 754、IEEE 854) float : 符號為1,尾數(shù)23,指數(shù)8 double: 符號為1,尾數(shù)52,指數(shù)11 在Netbeans如何查看?,復習題:,2.12.1 下面哪些是合法的Java標識符?哪些是Java的關(guān)鍵字? applet, Applet, b+, class, -c, public, 5#T, $123, water, int, x, y ?,第四周上機實驗課注意事項,學生注冊、選擇班級、選擇教師如(hlchen) 上機過程 1、每個機房門口的機器一般是留給輔導老師使用 2、僅提供實驗1 的視頻文件 3、學生把實驗放置個人的FTP目錄(下課后請關(guān)機、注銷、以免被下一個班的學生隨意篡改),項目名字至少出現(xiàn)題號,以便閱讀評分 4、輔導老師在哪里? 原因: 因東區(qū)機房被水泥墻阻隔,輔導老師無法同一個時刻出現(xiàn)在3個班的學生面前。 解決方案: 1、請把整個項目放置個人FTP下; 2、若輔導老師不在本機房,請移步到其他機房輔導老師; 3、輔導老師可使用FTP可以方便看到該學生的程序并當場作答,變量初始化,定義: 程序中定義變量之后可以通過變量名對存儲在該變量內(nèi)存空間的數(shù)據(jù)進行訪問和修改??梢栽诙x變量的同時使用賦值運算符“”為變量賦予一個初始值,稱為變量的初始化 e.g: double salary = 2000.0; int x = 10, y = 100; boolean flag = true;,賦值,定義: 賦值運算符“”用來將其右邊的數(shù)值賦予其左邊的變量,如果其右邊是一個表達式則需要先計算表達式的結(jié)果后,再把結(jié)果賦值給變量 e.g: double area, radius = 2.0; area = PI * radius * radius; /先計算表達式的結(jié)果,再賦值給area,2.5 運算符與表達式,運算符: 運算符 名稱 例子 說明 + 加運算 a+b 計算a加b的和 - 減運算 a-b 計算a減b的差 * 乘運算 a*b 計算a乘b的積 / 除運算 a/b 計算a除以b的商 % 模運算 a%b 計算a除以b的余數(shù) 表達式: 用運算符連接起來的式子,算術(shù)運算,定義: 數(shù)值數(shù)據(jù)之間最常見的是通過算術(shù)運算符連接操作數(shù)構(gòu)成算術(shù)表達式進行算術(shù)運算。算術(shù)運算符按操作數(shù)個數(shù)分為雙目運算符和單目運算符兩類。雙目算術(shù)運算符,它們都是左結(jié)合的,+、的優(yōu)先級低于*、/、%。 注意事項: (1)兩個整數(shù)類型的數(shù)據(jù)進行算術(shù)運算后,結(jié)果仍然是整數(shù) 類型。例如5/2的結(jié)果是2而不是2.5。 (2)模運算求a除以b的余數(shù),結(jié)果的符號與被除數(shù)a的符號 相同。例如:5%3的結(jié)果是2;5%3的結(jié)果是2;5% 3的結(jié)果是2。,、,+ 自增運算 a+, +a 把a的值加1后再賦值給a - 自減運算 a-, -a 把a的值減1后再賦值給a e.g: int a = 10 , b, c = 10, d; b = +a; /執(zhí)行完本句,變量b和a的值均為11 d = c+; /執(zhí)行完本句,變量c的值為11,而d的值為10,關(guān)系運算,關(guān)系表達式通過關(guān)系運算符確定兩個數(shù)據(jù)之間的小于、大于及相等關(guān)系,也稱比較運算表達式。Java語言提供了6種關(guān)系運算符。關(guān)系運算符都是雙目運算符,是左結(jié)合的,優(yōu)先級規(guī)則為:、=的優(yōu)先級相同且高于=、!=。 關(guān)系表達式運算的操作數(shù)可以是數(shù)值類型和字符類型等,運算結(jié)果是布爾類型。例如:1780都是關(guān)系表達式。,邏輯運算,邏輯運算符可以對象布爾類型的數(shù)據(jù)進行運算,結(jié)果也是布爾類型。Java語言提供了兩個雙目邏輯運算符:&(邏輯與)和|(邏輯或)、一個單目邏輯運算符:!(邏輯非),邏輯運算規(guī)則見表2-6。雙目邏輯運算是左結(jié)合的,單目邏輯運算是右結(jié)合的,優(yōu)先級順序為:!高于&高于|。 結(jié)果是布爾類型的變量或表達式通過邏輯運算符可以構(gòu)成邏輯表達式,可以用于表示較復雜的條件判斷。例如邏輯運算score = 70 & score = 80表示判斷score的值是否在70到80之間。,復合賦值,說明:a *= b; 等價于 a = a*b;,條件運算,定義: 條件運算符是提供的一個三目運算符,使用它構(gòu)成的條件運算表達式可以根據(jù)一個條件在兩個表達式的值中選擇一個作為結(jié)果。 格式: 條件 ? 表達式1 : 表達式2 e.g: c = ab ? a : b; /a和b的較大值并賦值給變量c,運算符與表達式的計算規(guī)則,數(shù)據(jù)類型的轉(zhuǎn)換,表達式運算過程中,運算符對參與運算的操作數(shù)的數(shù)據(jù)類型都有特定要求。通常要求操作數(shù)具有相同的數(shù)據(jù)類型,但是在程序中經(jīng)常需要對不同類型的操作數(shù)進行運算,這就需要將兩個操作數(shù)的數(shù)據(jù)類型轉(zhuǎn)換為同一數(shù)據(jù)類型再進行運算。 分類 自動類型轉(zhuǎn)換 e.g. 1.0 / 2 強制類型轉(zhuǎn)換 e.g. 5 / (int)2.0,數(shù)值型數(shù)據(jù)之間的轉(zhuǎn)換,規(guī)范: (1)如果操作數(shù)之一是double類型,則把另一個轉(zhuǎn)換為double類型。 (2)否則,如果操作數(shù)之一是float類型,則把另一個轉(zhuǎn)換為float類型。 (3)否則,如果操作數(shù)之一是long類型,則把另一個轉(zhuǎn)換為long類型。 (4)否則,把兩個操作數(shù)都轉(zhuǎn)換為int類型。 e.g: 1/2的結(jié)果是0,而1.0/2需要把2轉(zhuǎn)換為double,結(jié)果為0.5。 double d = 10.8; float f = (float)d; /將d的數(shù)值轉(zhuǎn)換為float類型,精度丟失 int i = (int)f; /將f的數(shù)值轉(zhuǎn)換為int類型的10,小數(shù)部分被截斷。,字符型數(shù)據(jù)與數(shù)值型數(shù)據(jù)之間的轉(zhuǎn)換,char型數(shù)據(jù)可以轉(zhuǎn)換為任何數(shù)值型數(shù)據(jù),反之亦然。一個char型數(shù)據(jù)轉(zhuǎn)換為數(shù)值型數(shù)據(jù)時,該字符的Unicode編碼值被轉(zhuǎn)換為指定的數(shù)值類型;一個int整數(shù)被轉(zhuǎn)換為char類型時,只保留整數(shù)的低16位作為Unicode編碼,高位部分被截斷;當一個浮點數(shù)被轉(zhuǎn)換為char類型時,先將浮點數(shù)轉(zhuǎn)換為int類型,再轉(zhuǎn)換成char類型。 e.g: byte b = A; / 正確,A的Unicode編碼為65,在1個字節(jié)范圍內(nèi) int i = 0; / 正確 byte b = u0FF4; / 錯誤,Unicode編碼uFF4超出了1個字節(jié)范圍 byte b = (byte) u0FF4; /正確,字符串與基本數(shù)據(jù)類型之間的轉(zhuǎn)換,Java中使用預定義的類String表示字符串類型。兩個字符串可以通過“+”連接起來,此處的“+”稱為連接運算符。如果進行連接運算的只有一個字符串,則Java自動將非字符串操作數(shù)轉(zhuǎn)換為字符串,再進行連接運算。 舉例: String s1= “Welcome “ + “to “ + “Java.“; String s2= “Chapter“ + 2; int i= 1, j = 2; System.out.println(“i+j=“ + i + j); /輸出i+j=12 System.out.println(“i+j=“ + (i + j); /輸出i+j=3 int value = Integer.parseInt(intString);/把字符串轉(zhuǎn)為整型 double value = Double.parseDouble(doubleString);/把字符串轉(zhuǎn)為浮點,使用Math類進行數(shù)學運算,e.g.,基本輸入輸出,命令行輸入 命令行輸出 對話框輸入 消
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《紙的發(fā)明》教學課件
- 小熊購物教學課件
- 排污止回閥項目投資分析及可行性報告
- 英語中有趣的雙關(guān)語
- 敬業(yè)主題班會課件
- 古人讀書教學課件
- 教學周長課件
- 心跳教學課件
- 2025年工業(yè)和信息化部機關(guān)服務(wù)中心應(yīng)屆高校畢業(yè)生招聘3人筆試歷年典型考題及考點剖析附帶答案詳解
- 新春棋牌活動方案
- 2023《廣東省建設(shè)工程消防設(shè)計審查疑難問題解析》
- 2025-2030年中國電力檢測行業(yè)市場發(fā)展態(tài)勢及未來趨勢研判報告
- AI智能在小學音樂課堂中的應(yīng)用研究
- 智能制造全過程造價咨詢服務(wù)方案
- UL489標準中文版-2019斷路器UL標準中文版
- 新能源汽車技術(shù) SL03維修手冊(第4章)-電氣-4.2.2~4.2.12電器集成
- 《安全生產(chǎn)培訓機構(gòu)基本條件AQ 8011-2023》知識培訓
- 《鍛造技術(shù)培訓》課件
- 《冷干機原理及維修》課件
- 中華詩詞之美學習通超星期末考試答案章節(jié)答案2024年
- 造口并發(fā)癥造口狹窄
評論
0/150
提交評論