數據類型
1.long類型數值有后綴L,float類型數值有后綴F,沒有F的浮點型數值默認為double,也可以在浮點類型后加后綴D。
2.三個特殊的浮點數值:正無窮大,負無窮大,NaN(不是一個數字)。分別用常量Double.POSITIVE_INFINITY,Double.NEGATIVE_INFINITY和Double.NaN表示。
3.整數被0除將會產生一個異常,而浮點數被0除將會得到無窮大(Infinity)或NaN結果。
4.浮點數值不適用于禁止出現舍入誤差的金融計算中,如System.out.println(2.0-1.1)將打印0.8999999999999999。因為浮點數值采用二進制系統表示,而二進制系統中無法精確的表示分數1/10,就好像十進制無法精確表示1/3一樣。
5.十六進制數值有一個前綴0x,八進制數有一個前綴0,Java7開始加上前綴0b就可以表示二進制數。
6.Java沒有任何無符號類型(unsigned)。
運算符
1.&&和||按照“短路”方式求值,&和|運算符應用于布爾值得到的結果也是布爾值,其運算和&&和||相似,但不按“短路”方式計算。
2.+=是右結合運算符,所以表達式a += b +=c等價于a += (b += c)
字符串
1.使用length和charAt方法時,length返回的是UTF-16編碼表示下的代碼單元數量,而非我們所認為的字符的個數,charAt方法返回的是指定位置處的代碼單元,而非我們所認為的字符。
2.由較短字符串構建字符串時,用字符串連接效率很低,每次都會構建一個新的String對象,耗時而且浪費空間,可以使用StringBuilder避免,代碼如下:
StringBuilder builder = new StringBuilder();
builder.append("Hello");
builder.append("World");
String str = builder.toString();
控制流程
1.通用for循環,Java SE 5.0新增的一種循環結構,更不易出錯,語句格式與例子如下:
for(variable : collection) statement
for(int element : a)//a是一個數組
System.out.printf("element");
本文僅屬于閱讀《Java核心技術》一書的閱讀筆記