1. 程式人生 > 其它 >Java3.4資料型別和識別符號

Java3.4資料型別和識別符號

技術標籤:java程式語言

資料型別

資料型別: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型別

個人學習記錄,由於能力和時間有限,如果有錯誤煩請讀者糾正,感謝!