Java3.4資料型別和識別符號
資料型別
資料型別:Java是一種強型別語言,針對每一種資料都給出了明確的資料型別
資料型別分類:
1.基本資料型別
四類八種
(1)整數 佔用位元組數
byte 1
short 2
int 4
long 8
(2)浮點數
float 4
double 8
(3)字元
char 2
(4)布林
boolean 1
2.引用資料型別(類/介面/陣列)
注意:1.整數預設是int型別,浮點數預設的是double型別
2.定義long型別資料的時候,要加L或者l,建議加L;
定義float型別的時候,要加F或者f,建議加F
識別符號
識別符號:就是給包,類,方法,變數起名字的符號。
組成規則:A:unicode 字元(數字字元、英文大小寫、漢字-不建議使用漢字)
B:下劃線_
C:美元符$
注意事項:1.不能以數字開頭
2.不能是Java中的關鍵字
常見命名規則:
1.基本要求、見名知意
2.常見的命名
a:包(其實就是資料夾,用於對類進行管理)
用法:全部小寫,多級包用.隔開
舉例:com,com.itheima
b:類
一個單詞首字母大寫
舉例:Student,Car
多個單詞每個單詞的首字母大寫
舉例:HelloWorld
c:方法和變數
一個單詞首字母小寫
舉例:age,show()
多個單詞從第二個單詞開始每個單詞的首字母大寫
舉例:maxAge,getAge()
*/
public class BiaoZhiFu {
public static void main(String[] args) {
//定義變數
//資料型別 變數名 = 初始化值;
int a = 10;
//正確
int b2 = 20;
//錯誤
//int 2b = 30;
//不能是java中的關鍵字,錯誤
//int public = 40;
}
}
java中float、double、long型別變數賦值新增f、d、L尾綴問題
原因:(轉載自CSDN 無鞋童鞋)
1. 新增尾綴說明
我們知道Java在變數賦值的時候,其中float、double、long資料型別變數,需要在賦值直接量後面分別新增f或F、d或D、l或L尾綴來說明。
其中,long型別最好以大寫L來新增尾綴,因為小寫l容易和數字1混淆。
例如:
long lNum = 1234L;
float fNum = 1.23f;
double dNum = 1.23d;123
這是Java語法規定,不新增尾綴很容易引起編譯器報錯,並且程式可讀性也會變差。
2. 不新增尾綴也不會報錯的情況
Java語言中,整數直接量(例如:1、2、10等),JVM虛擬機器是預設為int型別資料的。所以,當整數直接量賦給long、float或者double,而不新增尾綴,虛擬機器也會直接將int型別資料自動轉換為對應型別然後賦值。因為資料長度短的轉換為長的並不會造成資料丟失,所以預設可以自動轉換。
例如:
long lNum = 5; //不報錯,因為int自動轉換為long型別,不會報錯
float fNum = 7; //不報錯,因為int自動轉換為float型別,不會報錯
double dNum = 10; //同上123
但是,當浮點直接量(例如:1.2等),JVM虛擬機器預設為double型別,如果直接賦值給float就會引起編譯器報錯。
float fNum = 1.2; //報錯,因為1.2虛擬機器是預設為double型別,不能直接賦值給float型別變數
float fNew = 1.3f;//正確,因為尾綴添加了f,即告訴了虛擬機器1.3屬於float型別變數12
3. 總結
所以,當Java中遇到這三種類型變數需要賦直接量時候,最好都新增上相應的尾綴。這樣不僅會防止編譯器報錯,也會增加程式的可讀性。
但是下面這種情況就算新增尾綴也是錯的,因為尾綴僅是為了告訴虛擬機器該直接數屬於什麼資料型別,而不能實現資料型別強制轉換。
long lNum = 1.2L; //錯誤,double型別資料不能直接賦值給long型別
long lNew = (long)1.2; //正確,double型別資料強制轉換為long型別
個人學習記錄,由於能力和時間有限,如果有錯誤煩請讀者糾正,感謝!