java課件第2章基本數(shù)據(jù)類型.ppt
第2章基本數(shù)據(jù)類型和數(shù)組,2,本章導讀,1.標識符和關鍵字2.數(shù)據(jù)類型3.基本數(shù)據(jù)類型的轉換4.數(shù)據(jù)的輸入與輸出5.數(shù)組,3,2.1標識符和關鍵字,1標識符規(guī)定:由字母、下劃線(_)、美元符號($)和數(shù)字組成,并且第一個字符不能是數(shù)字。例如,identifier,userName,User_Name,_sys_val,$change,2mail,room#,class。標識符中的字母區(qū)分大小寫。字母包括多種語言的文字。Unicode字符集,4,2.關鍵字,被賦予特定意義的一些單詞,有著不同的用途,不可以把關鍵詞作為名字來用。數(shù)據(jù)類型說明符與修飾符abstract,int,short,byte,boolean,long,float,char,double,class,interface訪問說明符private,protected,public語句與標號case,switch,break,continue,default,try,catch,finally,throw,throws,while,do,for,if,return,else,5,2.關鍵字,運算符及邏輯值new,instanceof,false,true,length,null存儲類型說明符final,static,native,transient,方法修飾及其它void,synchronized,threadsafe,import,implements,extends,package,super,this,java語言中的保留字均用小寫字母表示。,6,2.2數(shù)據(jù)類型,基本數(shù)據(jù)類型布爾類型(Logical):boolean整數(shù)類型(Integer):byteshortintlong字符類型(Textual):char浮點類型(Floating):float、double復合數(shù)據(jù)類型:class、Interface、數(shù)組,7,常量和變量,常量:用保留字final來實現(xiàn)如:finalintNUM=100;變量:是java程序中的基本存儲單元,定義包括變量名、變量類型和作用域幾個部分。intcount;charc=a;變量的作用域,8,2.2基本數(shù)據(jù)類型,1布爾類型常量:true,false。變量的定義:booleanx=true;2整數(shù)類型,9,2.2基本數(shù)據(jù)類型,3字符類型Unicode字符集能表示迄今為止人類語言的所有字符集。如拉丁文、希臘語、阿拉伯語、漢語、日文片假名、匈牙利語等等。,一個漢字占2個字節(jié),一個英文字符占1個字節(jié),065535,Uincode表中的字符A,?,9,好,,n:換行b:退格t:水平制表:單引號,charx=A,漂亮=假,jiafei;,例子1:Unicode表與字符位置,必須轉換:(int)馬,10,2.2基本數(shù)據(jù)類型,4浮點類型:float、double,453.5439F,2e40f,213.549d,6e-140,常量值,11,數(shù)據(jù)轉換不包括邏輯類型和字符類型。按精度從“低”到“高”排列:byteshortintlongfloatdouble顯示轉換的格式:(類型名)要轉換的值;intx=(int)34.89;例子,2.3基本數(shù)據(jù)類型的轉換,低高,auto,高低,強制類型轉換,12,2.4數(shù)據(jù)的輸入與輸出,C語言:printf、scanf等。Java在命令行窗口(MS-DOS窗口)輸出數(shù)據(jù)。1數(shù)據(jù)輸出2數(shù)據(jù)輸入,13,2.4數(shù)據(jù)的輸入與輸出,1數(shù)據(jù)輸出:System.out.print;System.out.printf:/完全類似C語言中的printf函數(shù)。例子,printf的一般格式:printf(格式控制部分,表達式1,表達式n);printf(Stringformat,Object.args)舉例:System.out.printf("%f,%d%n",x,y);,14,2.4數(shù)據(jù)的輸入與輸出,2數(shù)據(jù)輸入:Scanner創(chuàng)建一個對象:Scannerreader=newScanner(System.in);,這些方法執(zhí)行時都會堵塞,等待用戶在命令行輸入數(shù)據(jù)回車確認。,例2-4,15,問題?,int和float都占4個字節(jié),為什么取值范圍不同?float并不是單純的101010這樣存儲,是把4個字節(jié)劃分為符號位,指數(shù)位,尾數(shù)位。3個部分固定的,因為有指數(shù),存儲的范圍當然比int大了。但是3個部分也有范圍限制,所以當精度值越大時,越不精確了。,返回,