IO流的序列化和反序列化
阿新 • • 發佈:2022-04-12
按位元組大小從低到高→ byte,short,char→int→long→float→double 不同型別的資料先轉換為同一型別,再進行計算
強制轉換 高→低
public class Annotation {
public static void main(String[] args) {
int name1 = 128;
byte name2 = (byte)name1;//記憶體溢位,byte最大127,最小-128
System.out.println(name1);
System.out.println((int)name2);
//強制轉換 (型別)變數名
}
}
執行結果:
128
-128
自動轉換 低→高
public class Annotation {
public static void main(String[] args) {
int name1 = 128;
double name2 = name1;
System.out.println(name1);
System.out.println((int)name2);
}
}
執行結果:
128
128
注意
-
不能對布林值進行轉換
-
轉換的時候可能會出現記憶體溢位,或者精度問題
public class Annotation {
public static void main(String[] args) {
double num1 = -1.33;
double num2 = 12.33;
System.out.println((int)num1);
System.out.println((int)num2);
}
}
輸出結果:
-1
12
-
jdk7新特性:數字之間可以用下滑線分割,用較大的數就更方便了
public class Annotation {
public static void main(String[] args) {
int num1 = 1_0000_0000_0;
System.out.println((int)num1);
}
}
輸出結果:
1000000000