版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、1,第 2 章 Java基礎(chǔ),2.1 標(biāo)識符和關(guān)鍵字 2.2 數(shù)據(jù)類型與常量、變量 2.3 運(yùn)算符和表達(dá)式,2,2.1 標(biāo)識符和關(guān)鍵字,Java語言的符號 例1-1 符號是構(gòu)成程序的基本單位 Unicode字符集,16位編碼,前256個字符與ASCII相同 Java符號分為:標(biāo)識符、關(guān)鍵字、運(yùn)算符和分隔符 標(biāo)識符(Label Signal) 一個名字,用來標(biāo)識任何一個成分,由用戶定義 關(guān)鍵字(Key Words) 具有特殊含義的字符序列,由Java語言定義 分隔符 ( ) ; 空格,3,Java 標(biāo)識符,標(biāo)識符是用來標(biāo)識變量、常量、方法、類、對象等元素的有效字符序列 標(biāo)識符由字母、數(shù)字、_和$
2、組成,長度不限,但實(shí)際命名不宜過長 標(biāo)識符的第一個字符必須為字母、 “_”或 “$” 不能以數(shù)字開頭 標(biāo)識符區(qū)分字母大小寫 如:Hello 和 hello 是兩個不同的標(biāo)識符,4,Java 標(biāo)識符舉例,合法的標(biāo)識符 names_no $2a boy_number A98 _abc _88 非法的標(biāo)識符 2ya*bw/ A-43_1 the% trueclassstatic,5,標(biāo)識符的約定,“見名知意” 規(guī)范大小寫的使用方式 大多數(shù)以小寫字母開頭 變量名、對象名、方法名、包名 標(biāo)識符由多個單詞構(gòu)成,則首字母小寫,其后單詞的首字母大寫,其余字母小寫。如 getAge 類名首字母大寫 常量名全部字
3、母大寫 約定:非強(qiáng)制性,6,Java 關(guān)鍵字,關(guān)鍵字是由Java語言定義的、具有特殊含義的字符序列 用戶只能按照系統(tǒng)規(guī)定的方式使用,不能自行定義 關(guān)鍵字一律用小寫字母表示 如:public class static void 表 2-1 P.13,7,Java 注釋,注釋是程序中的說明性文字 是程序的非編譯執(zhí)行部分 注釋的作用 給程序添加說明,增加程序的可讀性 注釋的形式 / 注釋部分 (單行) /* 注釋部分 */ (多行,塊注釋) /* 注釋部分 */ (文檔注釋) 例,8,2.2 數(shù)據(jù)類型,數(shù)據(jù)類型 決定數(shù)據(jù)的表示方式、取值范圍、可進(jìn)行的操作 Java數(shù)據(jù)類型 基本數(shù)據(jù)類型 簡單數(shù)據(jù)組成
4、的數(shù)據(jù)類型,數(shù)據(jù)是不可分解的 有整數(shù)、小數(shù)、字符等 引用數(shù)據(jù)類型,9,Java 數(shù)據(jù)類型,10,整數(shù)類型,整型有4種,差別是 占用的內(nèi)存空間 數(shù)據(jù)的取值范圍,11,整數(shù)類型,整數(shù)的默認(rèn)類型為 int 型 要表示整數(shù)為 long 型,在其后加L或l 如:345 是 int 型,345L是long 型 整數(shù)的3種進(jìn)制 十進(jìn)制數(shù)09表示的數(shù),首位不能為0 八進(jìn)制數(shù)07表示的數(shù),以 0 為前綴 十六進(jìn)制數(shù)09,af 或AF之間的字母表示的數(shù),以 0 x 或 0X 為前綴 如:十進(jìn)制數(shù) 58 的六種表示方式 58072 0 x3a 0 x3A 0X3a 0X3A,12,浮點(diǎn)數(shù)類型,浮點(diǎn)數(shù)就是帶小數(shù)點(diǎn)的數(shù)
5、 浮點(diǎn)數(shù)表示形式 標(biāo)準(zhǔn)記數(shù)法 由整數(shù)部分、小數(shù)點(diǎn)和小數(shù)部分組成 如:12.37-0.456 科學(xué)記數(shù)法(指數(shù)形式) 由尾數(shù)、E或e 及階碼組成 如:2.5E4 表示 2.5104 3.12e-5 表示 3.1210-5 浮點(diǎn)數(shù)類型 float單精度浮點(diǎn)數(shù)(有效精度6位) double 雙精度浮點(diǎn)數(shù)(有效精度6位),13,浮點(diǎn)數(shù)類型,取值范圍及占用的內(nèi)存大小,浮點(diǎn)數(shù)默認(rèn)類型為double 要表示浮點(diǎn)數(shù)為 float 型,加后綴F或f 如: 34.5 34.5d 是 double 型 34.5f 是 float 型,14,字符類型,字符類型 char Unicode字符,1個字符占16位 字符類型
6、數(shù)據(jù)的表示方法 單引號括起來的單個字符,如:A a 8 # 用Unicode碼表示,前綴是“ u ” 如:u0043 表示 C 說明: Unicode碼用4位十六進(jìn)制數(shù)表示,“0043”就是十進(jìn)制數(shù)67 u0000 uffff 可表示所有Unicode字符 轉(zhuǎn)義字符 如: n 符號的意義被轉(zhuǎn)換了 表示不能從鍵盤輸入的控制字符,15,轉(zhuǎn)義字符,16,字符串,字符串 String (這是一個類) 由多個字符組成的字符序列 字符串用雙引號括起來 如:green 123 How are you! a,字符串中可包含轉(zhuǎn)義字符 如:夕陽無限好 只是n 近黃昏 結(jié)果 :夕陽無限好 只是 近黃昏 又如:ab1
7、2字符 結(jié)果 :ab12字符,17,布爾類型,布爾類型 boolean 邏輯類型,表示邏輯量 占1個字節(jié) 2個值 true(真) false(假) 布爾值是邏輯運(yùn)算的結(jié)果,18,Java數(shù)據(jù)基本類型,19,常量,常量 程序運(yùn)行過程中其值始終保持不變的量 類似于數(shù)學(xué)中的“常數(shù)”,如:y = 3x + 5 有兩種:直接常量和符號常量 直接常量的類型 整數(shù)型,如:26 032 0 x1a 26L 浮點(diǎn)數(shù)型,如: 47.3 47.3d 47.3f 字符型,如: a A 5 好 布爾型,如: true false 字符串型,如:A student 3090102300 空格串 空串 ,20,符號常量,用
8、標(biāo)識符表示常量,稱為符號常量 例:計算圓的周長和面積 perimeter = 2*3.14159*r; area = 3.14159*r*r; 用 PI 表示 3.14159 final float PI = 3.14159f;聲明符號常量PI perimeter = 2*PI*r; area = PI*r*r; 符號常量必須先聲明,后使用,21,符號常量,符號常量的聲明 final 修飾符 類型標(biāo)識符 常量名= (直接)常量; 修飾符表示該常量的使用范圍 public,private,protected 或 缺省 類型標(biāo)識符:基本數(shù)據(jù)類型 常量名大寫 例如 final float PI=3.
9、14159f; /PI是一個浮點(diǎn)常量 final char SEX=M; /SEX是一個字符常量 final int MAX=100;/MAX是一個整型常量,22,符號常量的優(yōu)點(diǎn),增加程序的可讀性 從常量名可知常量的含義 增強(qiáng)程序的可維護(hù)性 只要在聲明處修改常量的值,就自動修改了程序中所有地方所使用的常量值 如: final float PI = 3.14159f; perimeter = 2*PI*r; area = PI*r*r;,只需修改這里,23,變 量,變量是指程序運(yùn)行中其值可以改變的量 變量的4個要素:名字、類型、值和使用范圍 如:public byte x=1;/ x為字節(jié)型變量
10、,初值為1 變量和內(nèi)存的關(guān)系 對應(yīng)內(nèi)存空間中的一個或幾個單元 變量名就是給對應(yīng)的內(nèi)存單元取的名稱 變量的值存放在對應(yīng)的內(nèi)存單元中 程序中按變量名區(qū)分和使用內(nèi)存單元,x,2,3,變量必須先聲明(定義)后使用,24,變 量,定義變量 修飾符 類型標(biāo)識符 變量名=常量; 類型標(biāo)識符:基本數(shù)據(jù)類型或引用數(shù)據(jù)類型 變量名必須符合標(biāo)識符的規(guī)定,一般小寫 聲明同類型的多個變量,用逗號分隔 包含“=常量”部分,此常量為變量的初始值 注意:常量的類型必須與類型標(biāo)識符相匹配,25,變 量,例: float x=25.4f, y; / x、y為浮點(diǎn)型變量,x初值為25.4 char c; / c 為字符型變量 bo
11、olean flag1=true, flag2; / 布爾型變量 int n, m; / 整型變量 區(qū)別以下內(nèi)容 a a a,字符常量 字符串常量 變量,26,【例2-1】使用整數(shù)型變量,不加“L”行嗎?,“+” 表示字符串連接,27,【例2-1】結(jié)果,程序運(yùn)行結(jié)果: a=13 b=20 c=37 x=30 y=123456,28,【例2-2】使用浮點(diǎn)型變量,程序運(yùn)行結(jié)果: a=35.45 b=3.56E18,為什么加“ f ”?,29,【例2-3】使用字符類型變量,程序運(yùn)行結(jié)果: ch1=a ch2=B,30,【例2-4】使用字符串類型數(shù)據(jù),程序運(yùn)行結(jié)果: str1=abc str3=123
12、,str1=abcnstr3=123,31,【例2-5】使用邏輯類型變量,程序運(yùn)行結(jié)果: 邏輯狀態(tài)1=true 邏輯狀態(tài)2=false,32,各種類型變量的初始值,33,2.3 運(yùn)算符和表達(dá)式,運(yùn)算符 表示各種運(yùn)算的符號 參與運(yùn)算的數(shù)據(jù)稱為操作數(shù) 運(yùn)算符的分類 1. 根據(jù)操作數(shù)的個數(shù)分 單目運(yùn)算只有一個操作數(shù) 雙目運(yùn)算有兩個操作數(shù) 多目運(yùn)算符多個操作數(shù),34,2.3 運(yùn)算符和表達(dá)式,2. 根據(jù)運(yùn)算性質(zhì)分 算術(shù)運(yùn)算符 + (加)、- (減) 、* (乘) 、/(除) %(求余數(shù))、+、- 關(guān)系運(yùn)算符 、(右移)、(無符號右移) 條件運(yùn)算符 ? : 括號運(yùn)算符 (),35,算術(shù)運(yùn)算符,+ 加 -
13、減 * 乘 / 除 可用于整數(shù)和浮點(diǎn)數(shù) % 取余 只用于整數(shù),例 23+5 6*5 27/3 45/4 45.0/4 9%3 9%4 -14%5 -14%-5,例 23+5 / 加的結(jié)果是 28 6*5 / 乘的結(jié)果是 30 27/3 / 除的結(jié)果是 9 45/4 / 除的結(jié)果是11, Why? 整除 45.0/4 / 11.35 9%3 / 余數(shù)是 0 9%4 / 余數(shù)是 1 -14%5 / 余數(shù)是-4 -14%-5 / 余數(shù)是-4 ,與被除數(shù)同符號,36,算術(shù)運(yùn)算符,取余%和除/ 運(yùn)算的應(yīng)用: 1234%10 1234/10%10 1234/100%10 1234/1000 1234%10
14、0 1234/100,/ 結(jié)果是 4 / 結(jié)果是 3 / 結(jié)果是 2 / 結(jié)果是 1 / 結(jié)果是 34 / 結(jié)果是 12,個位數(shù) 十位數(shù) 百位數(shù) 千位數(shù) 低2位數(shù) 高2位數(shù),37,單目算術(shù)運(yùn)算符,+ 自增 -自減 -負(fù)號,僅用于整型變量,不能用于常量和表達(dá)式 可在變量左邊,也可在變量右邊 如:a+ +a 變量a的值加1 a- -a 變量a的值減1,例 int j=5; j+; +j; -j; j-;,/結(jié)果 j等于6 /結(jié)果 j等于7 /結(jié)果 j等于6 /結(jié)果 j等于5,38,關(guān)系運(yùn)算符,關(guān)系運(yùn)算 兩個操作數(shù)間的比較運(yùn)算 關(guān)系運(yùn)算符 = = = != 運(yùn)算結(jié)果是布爾值 關(guān)系成立,結(jié)果為 tru
15、e 關(guān)系不成立,運(yùn)算結(jié)果為 false,39,關(guān)系運(yùn)算符,40,關(guān)系運(yùn)算符,注意 布爾類型及字符串類型數(shù)據(jù)只能使用= 和!= 字符型數(shù)據(jù)比較的依據(jù)是Unicode值 數(shù)字 0 9 為 4857 大寫字母 A Z 為 6590 小寫字母 a z 為 97122 字符串型數(shù)據(jù)從左向右比較每個字符,41,關(guān)系運(yùn)算符舉例,23.510.4 45!=45 7talk,/ 結(jié)果是true / 結(jié)果是false / 結(jié)果是false / 結(jié)果是true / 結(jié)果是true / 結(jié)果是false / 結(jié)果是false / 錯誤,字符串不能使用運(yùn)算符“”,42,邏輯運(yùn)算符,邏輯運(yùn)算 運(yùn)算對象為布爾型數(shù)據(jù) 運(yùn)算結(jié)
16、果仍是布爾值 邏輯運(yùn)算符 運(yùn)算次序:從右向左 即先計算表達(dá)式的值,再將表達(dá)式的值賦給變量,52,賦值運(yùn)算符,例 int i=3, j; / i的初始值是3 j=i+2; / 結(jié)果,j的值是5 i=2*j; / 結(jié)果,i的值是10 j=j+4; / 結(jié)果,j的值是9 j=i;/ 結(jié)果,j的值是10 i+2=j;/ 錯誤,不能為運(yùn)算式賦值 i=j=8;/右結(jié)合規(guī)律 先計算 j=8,再計算 i=j,53,復(fù)合賦值運(yùn)算符,由賦值運(yùn)算符與算術(shù)運(yùn)算符、邏輯運(yùn)算符和位運(yùn)算符組合而成,54,應(yīng)用舉例,i*=10; k+=8; x/=3; y*=x+2; a=i+; a=+i; a=i-; a=-i;,等價于i
17、=i*10; 等價于k=k+8; 等價于x=x/3; 等價于y=y*(x+2); 等價于 a=i;i+; 先賦值再自加 等價于 i+; a=i; 先自加再賦值 等價于 a=i;i-; 先賦值再自減 等價于 i-; a=i; 先自減再賦值,55,【例2-6】+、- 使用實(shí)例 P.25,i+=15 +i=17 -i=16 i-=16 i=15,56,條件運(yùn)算符,條件運(yùn)算符? : 三目運(yùn)算符 格式 ? : 功能 如果的值是true,取的值 如果的值是false,取的值 例 int min, x=4, y=20; min = (xy) ? x : y;,因?yàn)?xy 這個條件是成立的,所以取 ?后的變量
18、x的值,即min的值是4 如果xy,那么min=x,否則min=y,該語句的功能:找 x 、y 中的較小者 例:求x=|a|,x=(a=0) ? a : -a;,57,括號運(yùn)算符,括號運(yùn)算符 () 改變表達(dá)式中運(yùn)算符的運(yùn)算次序 先進(jìn)行括號內(nèi)的運(yùn)算,再進(jìn)行括號外的運(yùn)算 多層括號的情況下,先內(nèi)后外逐層運(yùn)算 如:21-(2+3*(1+2),58,表達(dá)式,表達(dá)式是用運(yùn)算符將操作數(shù)連接起來的符合語法規(guī)則的式子 操作數(shù)可以是常量、變量等 變量要先賦值 一個常量或一個變量是最簡單的表達(dá)式 例 int i=5, j=10, k; k=(24+3*i)*j; k=100; k=j;,這是表達(dá)式,59,運(yùn)算符的優(yōu)
19、先級,60,續(xù)前表,61,表達(dá)式的數(shù)據(jù)類型,表達(dá)式將得到一個結(jié)果,這個結(jié)果的數(shù)據(jù)類型就是表達(dá)式數(shù)據(jù)類型 例 int i=3, j=21, k; boolean f; k=(i+3)*4; f=(i*2)j; String s=abc+123;,這是算術(shù)表達(dá)式,這是布爾表達(dá)式,這是字符串表達(dá)式,62,表達(dá)式舉例,例:設(shè) int a=3, b=5, c=0,分析以下各語句執(zhí)行后a, b, c的值。 c=a+*5/b+; c=a+-(-b);,c=+a+b-; c=a+b;,c=a*5/b;c=3 a+;a=4 b+;b=6,-b; b=4 c=a-b;c=-1 a+; a=4,+a; a=4 c=
20、a+b;c=9 b-; b=4,等價于c=(a+)+b; c=a+b; c=8 a+;a=4 b=5,63,表達(dá)式舉例,例:設(shè) int a=3, b=5, c=0,分析以下各表達(dá)式運(yùn)算后a, b, c的值。 c=-a+; c=a+=b=2;,1,3*13,3-30,3+03,a=3,a+=3-=3*=3/=3,a+=a-=a*=a/=a,等價于c=-(a+); c=-a; c=-3 a+;a=4,b=2; b=2 a+=b;a=5 c=a; c=5,64,表達(dá)式舉例,例:設(shè) int x=5, y=5, z=0,則表達(dá)式 (z=1)!=0 將int型200轉(zhuǎn)換成float值200.0,結(jié)果x的值
21、是200.0 強(qiáng)制類型轉(zhuǎn)換 高級別的值賦給低級別變量 一般形式(數(shù)據(jù)類型)表達(dá)式; 例: byte a=(byte)129; int 值129轉(zhuǎn)換成 byte 值-127,結(jié)果a 獲得byte類型值-127 例: int i=(int)24.67; double 值24.67轉(zhuǎn)換成 int 值24,結(jié)果i 獲得int類型值24 強(qiáng)制類型轉(zhuǎn)換時,可能會造成數(shù)據(jù)精度丟失,67,數(shù)據(jù)類型轉(zhuǎn)換規(guī)則,表達(dá)式中不同類型數(shù)據(jù)計算時首先轉(zhuǎn)換成相同類型 例:int x=5; float y=10.2f, z; z=x+y;/ int類型變量x的值轉(zhuǎn)換成float類型值 5.0,再計算 z=x/2/ z的值為2.
22、0 z=(float)x/2 / z的值為2.5 例:int a=32,b; char c=A; b=a+c; / char類型變量c的值轉(zhuǎn)換成int類型值 65,再計算 c=(char)b; / int類型變量b的值強(qiáng)制轉(zhuǎn)換成char類型值a, c的值是a,68,【例2-7】整數(shù)相除 P.27,運(yùn)行結(jié)果 k=3 f1=3.0 f2=3.75,69,例:判斷下列程序段中的語句是否正確,int a=1234567890; a=12345678901; a=(int)12345678901L; long b=1234567890; b=12345678901; b=12345678901L; sh
23、ort c=12345; c=123456; c=(short)123456; byte d=123; d=1234; d=(byte)1234;,正確 錯,12345678901超出int類的范圍 正確,a 為-539222987 正確 錯,12345678901超出int類的范圍 正確,b 為12345678901 正確 錯,類型不匹配,不能從int轉(zhuǎn)換為short 正確,c 為-7616 正確 錯,類型不匹配,不能從int轉(zhuǎn)換為byte 正確,d 為-46,70,字符的計算,字符加(減)一個整數(shù) 設(shè)char ch= m m的unicode編碼為109 ch-1 為108 ch+1 為11
24、0 (char)(ch+1) 為n 兩個字符相減 a-A32 m -n -1 例:設(shè)c=m,計算以下表達(dá)式的值 c-1=n|c+1=n,true,71,大小寫字母的轉(zhuǎn)換,大寫字母轉(zhuǎn)換成小寫 設(shè)變量ch中保存一個大寫字母 ch+=32; 或ch=(char)(ch+32); ch+=(a-A); ch=Character.toLowerCase(ch); 小寫字母轉(zhuǎn)換成大寫 設(shè)變量ch中保存一個小寫字母 ch-=32; ch-=(a-A); ch=Character.toUpperCase(ch);,72,數(shù)學(xué)函數(shù)類 Math類 P.90,Math類在Java.lang類包中 提供常用數(shù)學(xué)函數(shù)的
25、實(shí)現(xiàn)方法 都是static方法 調(diào)用方式 Math.方法名,73,sin(double x) /返回正弦值,x必須是弧度 cos(double x) /返回余弦值,x必須是弧度 log(double x) /返回x的自然對數(shù) exp(double x)/返回ex abs(double x)/返回x的絕對值 max(double x, double y)/返回x和y中的較大值 min(double x, double y)/返回x和y中的較小值 sqrt(double x) /返回x的平方根 random(double x) /返回0, 1區(qū)間內(nèi)的隨機(jī)數(shù) pow(double y, double x) /返回yx round(double x) /對x 四舍五入取整
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年吉林大學(xué)第二醫(yī)院勞務(wù)派遣制病案管理崗位工作人員(12人)考試備考題庫及答案解析
- 2026許昌煙草機(jī)械有限責(zé)任公司招聘38人考試備考題庫及答案解析
- 2026廣西防城港市東興市商務(wù)和口岸管理局、東興海關(guān)招聘18人(第一批)筆試模擬試題及答案解析
- 2026貴州黔南州福泉市考調(diào)事業(yè)單位人員10人筆試參考題庫及答案解析
- 2026山東事業(yè)單位統(tǒng)考菏澤市單縣招聘初級綜合類崗位26人筆試模擬試題及答案解析
- 2026重慶云陽縣人民醫(yī)院招聘見習(xí)護(hù)士18人筆試模擬試題及答案解析
- 2026鷹潭市工業(yè)控股集團(tuán)有限公司全資子公司招聘6人筆試備考題庫及答案解析
- 2026甘肅蘭州市安寧區(qū)人民醫(yī)院招聘編外醫(yī)務(wù)工作人員1名筆試備考題庫及答案解析
- 2026廣東廣州市天河區(qū)同仁學(xué)校誠聘初中語文老師筆試參考題庫及答案解析
- 航空航天網(wǎng)絡(luò)信息安全承諾書3篇
- 食品安全管理制度打印版
- 多聯(lián)機(jī)安裝施工方案
- 煤礦副斜井維修安全技術(shù)措施
- 公共視頻監(jiān)控系統(tǒng)運(yùn)營維護(hù)要求
- 河南省職工養(yǎng)老保險參保人員關(guān)鍵信息變更核準(zhǔn)表
- 四川大學(xué)宣傳介紹PPT
- 小學(xué)數(shù)學(xué)人教版六年級上冊全冊電子教案
- 液氨儲罐區(qū)風(fēng)險評估與安全設(shè)計
- 阿司匹林在一級預(yù)防中應(yīng)用回顧
- 2023年福海縣政務(wù)中心綜合窗口人員招聘筆試模擬試題及答案解析
- GB/T 4103.10-2000鉛及鉛合金化學(xué)分析方法銀量的測定
評論
0/150
提交評論