整数拓展: 进制
int i = 0b10; //二进制0b
int i1 = 010; //八进制 0
int i2 = 10; //十进制
int i3 = 0x10; //十六进制0x
System.out.println(i); //2
System.out.println(i1); //8
System.out.println(i2); //10
System.out.println(i3); //16
浮点数拓展:银行业务怎么表示? 钱
//BigDecimal 数学工具类
//float 有限 离散 舍入误差 大约 接近但不等于
//double 最好完全使用浮点数进行比较
float f = 0.1f; //0.1
double d = 1.0/10; //0.1
System.out.println(f); //0.1
System.out.println(d); //0.1
System.out.println(f==d); //false
System.out.println("---------------------------------------------------");
float d1 = 323222222222.111111111111f;
float d2 = d1 + 1;
System.out.println(d1==d2); //true float 字长有限 离散 舍入误差 大约 接近但不等于
字符拓展
char c1 = 'a';
char c2 = '国';
System.out.println(c1); //a
System.out.println((int)c1); // 97 强制转换 ASCII
System.out.println(c2); //国
System.out.println((int)c2); // 22269 强制转换 ASCII
//所有的字符本质还是数字
//编码 Unicode 2字节 0-65536 Excel 2的16次方=65536
System.out.println("---------------------------------------------------");
//范围 U0000-UFFFF之间的十六进制值表示(前缀为u表示Unicode)
char c3 = '\u0061';
System.out.println(c3); //a
字符串拓展
//对象
String s1 = new String("Hello World");
String s2 = new String("Hello World");
System.out.println(s1==s2); //false 判断s1,s2是否相等
System.out.println(s1.equals(s2)); //true
System.out.println(s1=s2); //Hello World 把s2值赋值给s1
String s3 = "Hello World";
String s4 ="Hello World";
System.out.println(s3==s4); //true
System.out.println(s3.equals(s4)); //true
System.out.println(s2.equals(s3)); //true
布尔值拓展
boolean flag = true;
//以下两句等价
if (flag==true){}
if (flag){}
//Less is More! 代码要精简易读