封裝資料類型(在java.lang包下):
封裝資料類型聲明結構:(也可以單做資料類使用)
byte Byte ; short Short; int Integer(長用類型 ) ; long Long; float Float; double Double; char Character; boolean Boolean;
封裝資料類型:
能通過類名調用的方法或屬性都是靜态的static封裝資料類型,對基本資料類型的封裝,封裝資料類型是一個工具類。
封裝資料類型第一個字母是大寫,封裝一個類。
封裝資料類型是一個類,他的占用記憶體比基本資料類型要打,封裝完就是一個對象了。
也可以當基本資料類型來使用。
裝箱拆箱:
Integer i=100 轉換成 Integer i=Integer.valueof(100)這種轉換就叫做裝箱
能直接通過類名調用的都是靜态方法。
基本資料類型按道理是不能接受封裝資料類型的,因為封裝資料類型他是一個操作類。
int i=Integer.valueOf("100");
基本資料類型之是以能接受是因為它調用封裝中的一個轉換int類型的方法,将它轉換int類型,再指派給基本資料類型。
這就叫做拆箱,不會強制轉換類型轉換。
基本資料類型是不能接受對象類型的,通過傳回來接收,傳回的值
public class T1 {
public static void main(String[] args) {
int i=Integer.parseInt("15");//将字元串轉換成int型的十進制
System.out.println(i);
}
}
如何解決小數運算問題,有一個類可以解決:BigDecimal
import java.math.BigDecimal;
public class T1 {
public static void main(String[] args) {
BigDecimal bigDecimal = BigDecimal.valueOf(0.13);
BigDecimal bigDecimal1 = BigDecimal.valueOf(5.0);
BigDecimal bigDecimal2 = bigDecimal.add(bigDecimal1);//加法
BigDecimal bigDecimal3 = bigDecimal1.subtract(bigDecimal);//減法
BigDecimal bigDecimal4 = bigDecimal.multiply(bigDecimal1);//乘法
BigDecimal bigDecimal5 = bigDecimal1.divide(bigDecimal, 3, 3);//除法有除不盡報錯問題
//這個是解決:divisor:除數,scale:标度,即保留幾位
//roundingMode:舍入模式,具體可以檢視api有詳細解釋,大概有直接舍棄、直接進位、接近四舍五入等
System.out.println(bigDecimal2);
System.out.println(bigDecimal3);
System.out.println(bigDecimal4);
System.out.println(bigDecimal5);
}
}
String類:
String類是一個對象。
String類建立原理:
String s2=new String("abcd")
"abcd"、新建立的String對象。
隻要帶有“”引号都是字元串對象建立。
字元串類型有一個優化:字元串池,舉例 如果字元串中例如有 “abc”下次在申請的話就會直接在字元串池中那但 如果不是 abc他就會從新建立對象。
字元串類型有個禁忌:字元串有一件事情不能做,那就是字元串不斷的累加(因為字元串是對象,如果連續申請的話就是連續申請對象很浪費記憶體)
壓縮:
進制如果存儲的數越大,顯示的長度越長。
壓縮有壓縮長度的作用。
壓縮就是将相同位元組連接配接在一起,壓縮文字。
比如6個66位元組就是6x66解壓就是将66解壓縮
壓縮視訊就是品質壓縮,壓縮像素