最後還是迫於現實(實習項目)要學JAVA(#——# 其實我想學學C#),好吧廢話就不多說了
JAVA的8種基本類型:
1. 整型
byte(1字節,-128~127) short(2字節,-32768~32767)
int(4字節,-2147483648~2147473647,20億左右)
long(8字節,-9223372036854775808~9223372036854775807,92億億左右)
- JAVA沒有任何的unsigned類型
2. 浮點型
float(4字節,有效位數爲6~7位)
double(8字節,有效位數爲15位)
- 浮點型還有3個特殊值,無窮大,無窮小和NaN,檢測是否爲NaN應該使用if(Double.isNaN(x))
- 另,由於二進制的緣故,浮點數計算會出現誤差,如10個0.1相加結果是9.999....,在判斷相等時應當取兩數相減的絕對值,判斷是否小於一個較小的數(如1e-6,1e-9)
3. 字符型
char(2字節,\u0000~\Uffff)
- JAVA採用的是Unicode編碼,不同於C/C++的ASCII,因此JAVA中1個char變量也可以存儲一箇中文啦,不過貌似還有個碼點的東西,具體麼看懂(=-=)
4. 布爾型
boolean(4字節,false和true)
- 注意是boolean不是bool
- 其實很不理解爲啥要4個字節,明明1個bit就夠了,查了下是這樣解釋的
- 理由來源是《Java虛擬機規範》一書中的描述“雖然定義了boolean這種數據類型,但是隻對它提供了非常有限的支持。在Java虛擬機中沒有任何供boolean值專用的字節碼指令,Java語言表達式所操作的boolean值,在編譯之後都使用Java虛擬機中的int數據類型來代替,而boolean數組將會被編碼成Java虛擬機的byte數組,每個元素boolean元素佔8位”。這樣我們可以得出boolean類型佔了單獨使用是4個字節,在數組中又是1個字節”。
---------------------------------------------------------------------------------------------------------------------------
- JAVA中變量若只聲明而未初始化或賦值,則不能夠使用
- Eclipse快速打印System.out.println()的方法是 "syso"+"alt+/"+"回車"
- Eclipse快速打印Scanner的方法是 "sc"+"alt+/"+"回車"
- Eclipse單/多行註釋或取消註釋“//”,選中註釋區域,按"ctrl+/";類註釋先打“/**”,再回車即可
---------------------------------------------------------------------------------------------------------------------------
- JAVA中的const是保留字,不能使用,設置常量使用final
- 一般常量名全大寫表示
public class Main { public static final double PI = 3.1415926; //可在多個方法中使用 public static void main(String[] args) { final int N = 32; //僅在該類中使用 } }
---------------------------------------------------------------------------------------------------------------------------
- 移位運算符 <<,>>,<<<
- 其中右操作數都先完成了模32(若左操作數是long則模64)運算,因此1<<35等價於1<<3
- >>使用符號位填充,>>>使用0填充
---------------------------------------------------------------------------------------------------------------------------
- enum枚舉類型只能定義在頂級類
public class Main
{
enum Size{S,M,L,LL};
public static void main(String[] args)
{
// 不能在此處定義enum
Size size = Size.S;
switch(size)
{
case S:
;
case M:
;
case L:
;
case LL:
;
default:
;
}
}
}