10 数据类型扩展及面试题讲解
10 数据类型扩展及面试题讲解
public class fan02 {
public static void main(String[] args) {
//整数拓展:进制 二进制0b 十进制 八进制0 十六进制0x
int i=10;
int i2=010;
int i3=0x10;
System.out.println(i);//10
System.out.println(i2);//8
System.out.println(i3);//16
System.out.println("=============================================");
//浮点数拓展,银行业务怎么表示?
//使用BigDecimal 数学工具类
//===================
//最好完全避免使用浮点数进行比较
//最好完全避免使用浮点数进行比较
//最好完全避免使用浮点数进行比较
float fdo=0.1f;
double ads=1.0/10;
System.out.println(fdo==ads);//false 本来是正确却输出错误 所以最好完全避免使用浮点数进行比较
float ee=6536349727f;
float rr=ee+1;
System.out.println(ee==rr);//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) 2个字节 65536 Excel 2 16=65536
char c3='\u0061';
System.out.println(c3);//a
//转义字符
// \t 制表符
// \n 换行
System.out.println("Hello\tWorld");// \t转义成了空格
System.out.println("Hello\nWorld");// \n转义将两个单词换行
System.out.println("=============================================");
String sa = new String("hello world");
String sb = new String("hello world");
System.out.println(sa==sb);//false
String sc = "hello world";
String sd = "hello world";
System.out.println(sc==sd);//true
//对象 从内存分析
//布尔值扩展
boolean flag=true;
if(