Java基本知識點之變量和數據類型
Java中的變量和基本數據類型:
寫完第一個java程序之後,我們對Java也有瞭初步的瞭解,現在我們再來繼續認識一下Java中的基本知識點——變量和數據類型。
那麼我們該怎樣來認識變量和數據類型呢,在這裡,我們首先來認識一下內存,我們日常生活中的計算機體系中內存主要分為內存儲器和外存儲器,比如說我們平常看我們電腦配置的時候,都會看到8G+256G這樣的標志,其中的8G就是所說的內存儲器(RAM),而256G也就是外存儲器,諸如磁盤,u盤,光盤等,這裡我們就不詳細的研究瞭。我們定義的變量占用的就是內存儲器,它的本質就是一段實際連續存儲空間,而數據類型則代表數據需要占用的存儲空間大小。數據類型的作用就是告訴編譯器當前這個變量需要占用多少內存。Java中的數據類型分為基本數據類型和引用數據類型,基本數據類型一共有八個,現在我們就先來認識一下這八個基本數據類型。
整型
public class Test { public static void main (String[]args) { int a = 10;//int 代表整型 int b = 5; System.out.println("a的值是:"+a); System.out.println("b的值是:"+b); } }
註:整型在內存中占用四個字節,不管是32位還是64位,和操作系統沒有關系,一個字節=八個bit位,所以整型在內存中占三十二個bit位,一個bit位代表一個二進制數字,第一個bit位代表的是符號位,後面的三十一個bit位代表數值位,總共有2^31 種狀態,正數有2^31-1 種可能,負數的范圍是-2^31 —— 1,所以我們可以求出整形的取值范圍:-231-231-1
public class TestB { public static void main(String[] args) { int a =10; System.out.println(Integer.MAX_VALUE); System.out.println(Integer.MIN_VALUE); } }
這裡我們可以用int的包裝類Integer來驗算取值范圍結果
註:①整型的最大值+1就變成瞭最小值,相當於一個圓一樣在一直循環
長整型
public class TestC { public static void main(String[] args) { long a = 10L; long b = 5L; System.out.println("a的值是:"+a); System.out.println("b的值是:"+b); } }
註意:長整型在Java中占八個字節,64個bit位,一個符號位,63個數值位,同樣的計算方法,它的取值范圍是:-263-263-1
public class TestD { public static void main(String[]args) { long a = 10L; System.out.println("最大值:"+Long.MAX_VALUE);//“+”是拼接的意思 System.out.println("最小值:"+Long.MIN_VALUE); } }
這裡我們也可以用long的包裝類Long來驗證
短整型
public class TestH { public static void main (String[]args) { short a = 2; short b = 4; System.out.println(a); System.out.println(b); } }
短整型占兩個字節,取值范圍也就是-2^ 16——2^15-1
同樣的我們也可以用short的包裝類Short來驗證:
public class TestI { public static void main(String[]args) { short a = 10; System.out.println("最大值:"+Short.MAX_VALUE); System.out.println("最小值:"+Short.MIN_VALUE); } }
單精度浮點型
public class TestJ { public static void main(String[]args) { float f = 11.5f; //小數默認為是雙精度,所以要加一個f float f1= 6.3f; System.out.println(f); System.out.println(f1); } }
註:單精度浮點型占四個字節,我們同樣可以計算出它的取值范圍為-231-231-1。小數默認為是雙精度類型,所以在定義的時候需要在後面加一個”f”,這也體現瞭java的安全性
public class TestK { public static void main(String[]args) { float f = 1.6f; System.out.println(Float.MAX_VALUE); System.out.println(Float.MIN_VALUE); } }
我們同樣可以用float的包裝類Float來驗證
雙精度浮點型
public class TestO { public static void main(String[]args) { double d = 11.5; double d1 = 14.73; System.out.println(d); System.out.println(d1); } }
註:double占八個字節,同樣可以用double的包裝類Double來計算取值范圍。隻要是小數默認都是雙精度類型,所以寫程序有小數的時候建議都用double,當進行兩個整數相除結果是小數的時候,需要把其中一個整數定義為double類型,比如 double d = 1.0;
public class TestP { public static void main(String[]args) { double d = 1.6; System.out.println(Double.MAX_VALUE); System.out.println(Double.MIN_VALUE); } }
字符數據類型:字符數據類型
public class TestQ { public static void main(String[]args) { char ch = 'A';//可以是一個漢字,漢字也占兩個字節,也可以是數字,打印出來的將會是在Unicode碼中對應的符號 System.out.println(ch); } }
字符數據類型占兩個字節,不同的是這裡不可用char的包裝類Character計算它的取值范圍,因為它的取值對應的是Unicode碼中的符號
字節類型
public class TestR { public static void main(String[]args) { byte a = 102; byte b = 1; byte c = (byte)(a+b);//小於四個字節的類型計算時會提升為整型計算,所以需要強制轉換為字節類型 System.out.println(c); } }
字節類型占1個字節,計算初取值范圍為-128——+127,需要註意的是,小於四個字節的類型在進行計算時會整型提升,所以需要強制轉換為字節型
public class TestS { public static void main (String[] args) { byte a = 12; System.out.println(Byte.MAX_VALUE); System.out.println(Byte.MIN_VALUE); } }
同樣可以用byte的包裝類Byte驗證
8.佈爾類型
public class TestT { public static void main(String[]args) { boolean flg = false; System.out.println(flg); } }
佈爾類型在java中沒有明確大小,並且它隻有兩個取值,true/false,java中的真/假隻有true/false,沒有所謂的0是假,非0是真。佈爾類型對應的包裝類是Boolean
除去以上這八大基本數據類型,在Java中還有一種叫引用數據類型,如:類 String 數組,抽象類 接口 枚舉等等,下面我們再來認識一下String
字符串數據類型:
public class TestU { public static void main(String[]args) { String str ="hello";//字符串用雙引號 String str1 = "hello"+"world"; System.out.println(str); System.out.println(str1);//用"+"可以把兩個字符串拼接起來,任意數據類型和字符串拼接後都是字符串 } }
認識完以上幾種數據類型,我們對變量也有瞭大概的瞭解,在變量的命名中,有一下幾種規則:
①:隻能包含數字字母下劃線
②:數字不能開頭
③:推薦使用小駝峰,numMax,也就是初瞭第一個單詞首字母,其他都要首字母大寫
java中除瞭變量,還有一種叫做常量,顧名思義,也就是隻能被初始化一次,並且使用的時候要記住一定要初始化,常量又分為兩種:
①:字面常量:像10,”abc”這種
②:被final修飾的變量: final int MAXNUM = 10 ;此時的maxNum是常量,並且字母全部大寫。
學到這裡,我們對Java中的數據類型和變量也有瞭一定的認識,更加期待後面的學習!!!
總結
到此這篇關於Java基本知識點之變量和數據類型的文章就介紹到這瞭,更多相關Java變量和數據類型內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- None Found