public class Demo03 {
public static void main(String[] args) {
//整数扩展:
// 进制: 二进制0b 十进制 八进制0 十六进制0x
int i=10;
int i2=010; //八进制
int i3=0x10; //十六进制 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);
System.out.println(d);
System.out.println(f==d); //false
float d1=3123112312313123131f;
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字节 65536=2的16次方 Excel 65536
//U0000 UFFFF \ u代表转译
char c3='\u0061'; //这里61是十六进制=65,用\是表示后面是转移字符,用u是unicode的缩写,表示后面是一个unicode字符。其实只是写法问题。
System.out.println(c3);
//转义字符
//\t 制表符
//\n 换行
//\a 响铃
//\b 退格
//\f 换页
//\r 回车
//\v 垂直制表
//\0 空字符
//\ddd 1到3位八进制数所代表的任意字符
//\xhh 1到2位十六进制所代表的任意字符
System.out.println("=========================================");
String sa=new String("123");
String sb=new String("123");
System.out.println(sa==sb); //false
String sc="123";
String sd="123";
System.out.println(sc==sd); //true
//对象 从内存分析
//布尔值扩展
boolean flag=true;
if(flag){}
if(flag==true){}
//Less is More!代码要简单易读
}
}