java基本型別學習之一基本型別以及其封裝類
阿新 • • 發佈:2019-02-12
1.整數型別: byte | short | int | long
型別名 | 佔用空間 | 取值範圍 |
---|---|---|
byte | 8位(1個位元組) | -27-27-1 |
short | 16位(2個位元組) | -215-215-1 |
int | 32位(4個位元組) | -231-231-1 |
long | 64位(8個位元組) | -263-263-1 |
注意:為long型別賦值,需新增L或l字尾。
1.1 Integer建構函式:
直接賦予整數的值:引數s要可以轉化成整數,否則報數字格式異常:public Integer(int value) { this.value = value; }
public Integer(String s) throws NumberFormatException { this.value = parseInt(s, 10); }
2.浮點數型別:double | float
型別名 | 佔用空間 | 取值範圍 |
---|---|---|
float | 32位 | -1.4E-45~ 3.40E+38,-3.4E+38 ~ -1.4E-45 |
double | 64位 | 4.9E-324~1.7E+308,-1.7E+308~-4.9E-324 |
其中,1.4E-45表示1.4*10-45。
2.1 Double的建構函式:
直接賦值: public Double(double value) {
this.value = value;
}
引數s要可以轉化成double,否則報數字格式異常:public Double(String s) throws NumberFormatException { value = parseDouble(s); }
注意:在使用浮點數常量時,若在結尾處不加任何的字尾,此時虛擬機器預設為double雙精度浮點數。因此在賦值時,要根據需求加上字尾:如float型別需要加上F或f字尾。
3.字元型別:char
char型別賦值範圍為0~65535的整數。
4.型別轉換
4.1 自動型別轉換
- 兩種型別相容
- 目標型別取值範圍大於源型別
4.2 強制型別轉換
- 兩種型別不相容
- 目標型別取值範圍小於源型別
eg: int to byte, 大轉小,可能損失精度。