天天看點

java常用類與包裝類--包裝類

局部變量中基本資料類型直接配置設定在棧中,而對象配置設定在堆中

将基本資料類型封裝成對象的好處在于可以在對象中定義更多的功能方法來操作該資料

包裝類主要功能:用于基本資料類型與字元串之間的轉換

java常用類與包裝類--包裝類

Integer 類在對象中包裝了一個基本類型 int 的值。

此外,該類提供了多個方法,能在 int 類型和 String 類型之間互相轉換,還提供了處理 int 類型時非常有用的其他一些常量和方法。

java常用類與包裝類--包裝類
java常用類與包裝類--包裝類
java常用類與包裝類--包裝類
java常用類與包裝類--包裝類

        Interger i1=5;//自動裝箱

        Interger i2=new Interger(1);

        Interger i3=Interger.valueOf(3);

java常用類與包裝類--包裝類

        int i4 = i1;//自動拆箱

        int i5 = i2.intValue();

java常用類與包裝類--包裝類

        String s1 = 5+"";自動裝箱

        String s2 = String.valueOf(3);

java常用類與包裝類--包裝類

String轉換成int值的幾種方式:

1.int i1 = Integer.parseInt("12");

2.int i2 = new Integer("12").intValue();

推薦第一種方式,這也是包裝類的最常用的場景

字元串轉換為其它基本資料類型

byte b = Byte.parseByte("15");

float f = Float.parseFloat("1.5");

double d = Double.parseDouble("3.14");

java常用類與包裝類--包裝類

       .toString方法

java常用類與包裝類--包裝類

         Integer i8 = new Integer("3");

java常用類與包裝類--包裝類
java常用類與包裝類--包裝類

  int值轉換成String的4種方式:

String s1 = "" + 10;

String s2 = String.valueOf(10);

String s3 = new Integer(10).toString();

String s4 = Integer.toString(10);

  推薦使用第一,二種方式

java常用類與包裝類--包裝類
java常用類與包裝類--包裝類
java常用類與包裝類--包裝類
java常用類與包裝類--包裝類

檢視一下擁有調用這個方法所在這個類:

java常用類與包裝類--包裝類
java常用類與包裝類--包裝類

針對超出Integer表數範圍的大數場景,Java提供了BigInteger類,用于大整型數的計算(加減乘除餘)

BigInteger add(BigInteger val)

  傳回其值為 (this + val) 的 BigInteger

BigInteger subtract(BigInteger val)

  傳回其值為 (this - val) 的 BigInteger。

BigInteger multiply(BigInteger val)

  傳回其值為 (this * val) 的 BigInteger。

BigInteger divide(BigInteger val)

  傳回其值為 (this / val) 的 BigInteger。

BigInteger[] divideAndRemainder(BigInteger val)

  傳回包含 (this / val) 後跟 (this % val) 的兩個 BigInteger 的數組。

java常用類與包裝類--包裝類

針對精确計算的場景,Java提供了BigDecimal類,用于浮點數的精确計算

構造方法:

BigDecimal(double value)

  直接使用double參數的構造方法有一定的不預支性

BigDecimal(String value)

  必須把他轉成String類型才會準确

java常用類與包裝類--包裝類

Character 類在對象中包裝一個基本類型 char 的值。

構造方法(隻有一個):

Character(char value)

構造一個新配置設定的 Character 對象,用以表示指定的 char 值。

java常用類與包裝類--包裝類

此外,該類提供了幾種方法,

以确定字元的類别(小寫字母,數字,等等),

并将字元從大寫轉換成小寫,反之亦然。

都是靜态方法

boolean isUpperCase(char ch)

boolean isLowerCase(char ch)

boolean isDigit(char ch)

char toUpperCase(char ch)

char toLowerCase(char ch)

java常用類與包裝類--包裝類
java常用類與包裝類--包裝類
java常用類與包裝類--包裝類

大多數人都以為是才智成就了科學家,他們錯了,是品格。---愛因斯坦