数据类型拓展及面试题

public class Demo03 {
public static void main(String[] args) {
//整数拓展: 进制 二进制0b 八进制0 十进制0x

int i = 10;
int i2 = 012; //八进制0
int i3 = 0x1F; //十六进制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

float f1 = 21333333f;
float f2 = f1 + 1;
System.out.println(f1 == f2); //true 超过7位就会显示true,不超过7位显示false

//===============================
//字符拓展?
//===============================
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);//a

//转义字符
// \t 制表符,类似table
// \n 换行

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){}//老手
//代码要精简易读
}
}

posted @ 2021-09-06 20:53  狂神大弟子  阅读(23)  评论(0)    收藏  举报