Java資料型別拓展
阿新 • • 發佈:2021-07-11
import java.math.BigDecimal;
public class Dome03 {
public static void main(String[] args) {
//整數拓展 進位制 二進位制0b 十進位制 八進位制0 十六進位制0x
int i = 10;
int i2 = 010; //八進位制0
int i3 = 0x12; //十六進位制0x 0~9 A~f 16
System.out.println(i);
System.out.println(i2);
System.out.println(i3);
System.out.println("=====================");
//==============================================
//浮點數拓展? 銀行業務怎麼表示? 錢
//==============================================
//BigDecimal 數學工具類
//float 有限 離散 舍入誤差 大約 接近但不等於
//double
//最好完全使用浮點數進行比較
//最好完全使用浮點數進行比較
//最好完全使用浮點數進行比較
float f = 0.1f; //0.1
double d = 1.0/10; //0.1
System.out.println(f==d); //false
//System.out.println(f);
//System.out.println(d);
float d1 = 23111313131f;
float d2 = d1+1;
System.out.println(d1==d2); //true
System.out.println("===========================");
//==============================================
//字元拓展?
//==============================================
char c1 = 'a';
char c2 = '中';
System.out.println(c1);
System.out.println((int)c1);//強制換行
System.out.println(c2);
System.out.println((int)c2);//強制換行
//所有的字元本質還是數字
//編碼 Unicode 表: 97 = a 65 = A 2位元組 0~65536 Excel 2 16 =65536
// U0000 UFFFF
char c3 ='\u0061';
System.out.println(c3);
System.out.println("=====================");
//轉義字元
// \t 製表符
// \n 換行
System.out.println("hello\tworld");
System.out.println("hello\nworld");
System.out.println("=====================");
String sa = new String("hello world");
String sb = new String("hello world");
System.out.println(sa==sb);
String sc = "hello world";
String sd = "hello world";
System.out.println(sc==sd);
//物件 從記憶體分析
//布林值拓展
boolean flag = true;
if (flag==true){} //新手
if (flag){} //老手
//less is More! 程式碼要精簡易讀
}
}