Java學習-Java語言基礎
1.Java符號集
1.1Java標識符
定義標識符的規則:由字母、數字、下劃線和$符號組成,數字不能開頭。
命名規則:
1. 包名:全部小寫。eg:xxxyyyzzz
2. 類名、接口名:首字母大寫。eg:XxxYyyZzz
3. 變量名、函數名:首個單詞首字母小寫,後續單詞首字母大寫。eg:xxxYyyZzz
4. 常量名:全部大寫,單詞之間用下劃線連接。eg:XXX_YYY_ZZZ
1.2關鍵字
1.3分割符和註釋
分隔符:{}、()、[]、;、,、空格符
註釋:
//單行註釋
/* * /多行註釋
/** */文檔註釋
2.java 數據類型
2.1整型
類型 | 佔用字節數 |
---|---|
byte | 1 |
short | 2 |
int | 4 |
long | 8 |
2.1.1整型常量
1. 十進制數,123,-321
2. 八進制數,以0開頭,(012)8=(10)10
3. 十六進制,以0x或者0X開頭(此處是零,不是字母o),(0x12)=(18)10
2.1.2整型變量
1. Java允許隨時定義變量,不用集中在代碼前面定義。
2. Java可以同時定義多個相同的數據類型,用逗號隔開。
2.2字符型
類型 | 佔用字節數 |
---|---|
char | 2 |
Java中的char佔用兩個字節可以存儲漢字,‘我’…
c++中的char只佔用一個字節。
字符串常量,常用String進行操作。
2.3布爾型
類型 | 佔用字節數 |
---|---|
boolean | 1 |
boolean爲基礎數據類型,Boolean爲封裝類。
2.4浮點型
類型 | 佔用字節數 |
---|---|
float | 4 |
double | 8 |
Java中默認小數位double型,定義float的時候應注意:float a = 1.7F(float a = 1.7f)。
2.5數值類型不同的數據轉換
簡單說明精度從低到高排列:
2.5.1隱式轉換(低精度–>高精度)
例如:double a = 1;
此時我們輸出a的話,就會發現輸出的結果爲1.0,代表着這個數已經被轉換爲double型的1.0了,而不是整型1了。
2.5.2顯式轉換(高精度–>低精度)
顯示轉換也稱之爲強制轉換,也就是要進行強制轉換這個操作。
舉個簡單的例子:int a = (int)1.7;輸出的結果就是整型的1。
在這個過程中我們可以看到數值改變了,這也就是顯示轉換的缺點:丟失精度了
同時我也在此處拋出一個問題:關於short s1 = 10;
這行代碼在編譯過程中是沒有報錯的,但在我們常識中,10默認爲int整型,現在將整型轉換爲short不是應該進行強制轉換嗎?
爲什麼編譯器沒有報錯呢?看看那個大牛能夠catch到這個問題!
2.5.3字符串類型數據和整型數據之間的轉換
前面的都是基本數據類型之間的交換,而這個卻是基本數據類型和引用數據類型的交換。
我覺得這就是引進Integer包裝類和Double包裝類的原因。只有數據類型大體上保持一致才能進行交換。
1. String–>int:int a = Integer.parseInt(“2”);
2. String–>double:double a = Double.parseDouble(“2”);
2. 數值類型–>String:字符串+數值類型
3.表達式和語句
- 算術運算符–>算術表達式
- 賦值運算符–>賦值表達式
- 關係運算法–>關係表達式
- 邏輯運算符–>邏輯表達式
- 位運算符–>位表達式