数据类型拓展
public class Demo03 {
public static void main(String[] args) {
//整数拓展 进制 二进制0b 十进制 八进制0 十六进制0x
int i=10;
int i1=0b10;
int i2=010;// 八进制0
int i3=0x10;//十六进制0x 0~9,A~F 16 如果是0x11输出就是17 A是10
//二进制的10就是2,八进制的10就是8,十六进制的10就是16。逢8进1就是八进制,逢16进1就是16进制
System.out.println(i);
System.out.println(i1);
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 这两个数一样却是false
System.out.println(f);
System.out.println(d);
float d1=2313131313131f;
float d2=d1+1;
System.out.println(d1==d2);//这两个数完全不一样却结果为ture
//==============================================================================================
//字符拓展
//==============================================================================================
char c1='a';
char c2='中';
System.out.println(c1);
System.out.println((int)c1);//强制转换 把字符转为数字
System.out.println(c2);
System.out.println((int)c2);//强制转换
//所有的字符本质还是数字
//char类型会涉及到编码问题 编码里有个编码叫unicode编码 (97=a,65=A) 可以处理各种语言的文字 占2字节 最多表示65536个字符
//unicode编码表示方法u0000~uFFFF
char c3='\u0061';//unicode编码的方法表示结果是a
System.out.println(c3);
//==============================================================================================
//转义字符
/*
\t 制表符
\n 换行
*/
System.out.println("Hello\tworld");
System.out.println("Hello\nworld");
//==============================================================================================
//布尔拓展
boolean flag=ture;
if(flag=ture){}//新手
if(flag){}//老手
//ledd is moret 代码要精简易读
}
}