八大基本數據類型及包裝類(裝箱拆箱)


一、八大基本數據類型

  八大基本數據類型包括:整數類型(byte、short、int、long),浮點類型(float、double),字符類型(char),布爾類型(boolean)

    byte:8位,占用空間為1字節,最多存儲數據量是255,存放的數據范圍為-128~127之間。

    short:16位,占用空間為2字節,最大數據存儲量為65536,數據范圍為-32768~32767。

    int:32位,占用空間為4字節,最大數據存儲量為232-1,數據范圍為-231~231-1。

    long:64位,占用空間位8字節,最大數據存儲量為264-1,數據范圍為-263~263-1。

    float:32位,占用空間為4字節,數據范圍為3.4e45~1.4e38,直接賦值時必須在數字后加上f或F。

    double:64位,占用空間為8字節,數據范圍為4.9e324~1.8e308,賦值時可以加d或D,也可以不加。

    boolean:占內存1字節,可存儲true與false兩個數值,分別表示邏輯的真與假。

    char:16位,存儲Unicode碼,用單引號賦值。

  范圍從小到大依次為:byte、short、char、int、long、float、double

二、包裝類

2.1 Java為每種基本數據類型分別設計了對應的類,稱之為包裝類。

基本數據類型 對應的包裝類
byte Byte
short Short
int Integer
long Long
char Character
float Float
double Double
boolean Boolean

 

 

 

 

 

 

 

 

 

 

 

每個包裝類的對象可以封裝一個相應的基本數據類型的數據,並提供了其他一些有用的方法。包裝類對象一經創建,其內容不可改變。

基本數據類型與包裝類的相互交換:

  由基本數據類型向對應的包裝類轉換稱為裝箱,例如把int包裝成integer類的對象。

  由包裝類相對應的基本數據類型轉換稱為拆箱,例如把integer類的對象重新簡化為int。

2.2 包裝類的應用

  1)實現int和integer的相互轉換

  可以通過integer類的構造方法將int裝箱,通過integer類的intValue方法對integer拆箱。

 1 public static void main(String[] args) {  2         int m = 500;  3         Integer iobj = new Integer(m);  4         int n = iobj.intValue();  5         System.out.println("n=" + n);  6 
 7         Integer iobj2 = new Integer(500);  8         System.out.println("iobj 等價於 obj2 ?" + iobj.equals(iobj2));  9  } 10      /*
11  n=500 12  iobj 等價於 obj2 ? true 13      */

  2)將字符串轉換為整數

  integer類有一個靜態的parseInt()方法,可以將字符串轉換為整數。

  語法為parseInt(String s,int radix);其中s為要轉換的字符串,radix為進制(默認為十進制)。

 1 public static void main(String[] args) {  2         String str[] = {"123", "123abc", "435ssA", "abcxyz", "aa", "a"};  3         for(String elemStr : str){  4             try{  5                 int iNumber = Integer.parseInt(elemStr, 10);  6                 System.out.println("ok.");  7             }catch(Exception e){  8                 System.out.println("can not cast to int type.");  9  } 10  } 11     }

  3)將整數轉換為字符串

  integer類有一個靜態的toString()方法,可以將整數轉換為字符串。

1 int myIntValue = 999; 2 String intStr = Integer.toString(myIntValue); 3 System.out.println("value is " + intStr); 4 // value is 999

三、自動拆箱和裝箱

  自動拆箱:對象轉換成基本數值

  自動裝箱:基本數值轉換成對象

1 int m = 500; 2 Integer obj = m; 3 int n = obj; 4 System.out.println("n =  " + n); 5 Integer obj1 = 500; 6 System.out.println("iobj 等價於 obj2 ?" + obj.equals(obj1)); 7     /* n = 500 8  iobj 等價於 obj2 ?true 9     */

四、小結

  1.常用方法

1  public int parseInt(String str):把字符串轉成基本類型int 2  public static String toString(int x):把基本類型int轉成字符串 3  public static Integer valueOf(int x):把基本類型i字符串轉成Integer對象 4  public int intValue():以 int類型返回該包裝類對象的值

  2.System類:系統屬性信息工具

1   public static long currentTimeMillis():獲取當前系統時間與1970年01月01日00:00點之間的毫秒差值 2   public static void exit(int status):用來結束正在運行的Java程序。參數通常傳入0記為正常狀態,其他為異常狀態 3   public static void gc():用來運行JVM中的垃圾回收器,完成內存中垃圾的清除。 4   public static String getProperties():用來獲取系統屬性信息

  3.Arrays類:數組操作工具類

1    public static void sort方法,用來對指定數組中的元素進行排序(元素值從小到大進行排序) 2    public static String toString方法,用來返回指定數組元素內容的字符串形式 3    public static void binarySearch方法,在有序數組中,查找給定元素值出現的位置。若沒有查詢到,返回位置為插入點-1。

  4.Math類:數字運算工具類

1  abs方法,結果都為正數 2  ceil方法,結果為比參數值大的最小整數的double值 3  floor方法,結果為比參數值小的最大整數的double值 4  max方法,返回兩個參數值中較大的值 5  min方法,返回兩個參數值中較小的值 6  pow方法,返回第一個參數的第二個參數次冪的值 7  round方法,返回參數值四舍五入的結果 8  random方法,產生一個大於等於0.0且小於1.0的double小數

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM