010_JAVA基础语法_数据类型及其扩展,面试题
-
整数类型
-
整数类型最常使用int
-
long型,一般要在数字后加大/小写L。建议使用L,小写容易与数字1混淆
-
整数类型有二进制(0b开头)、八进制(0开头,范围0~7)、十进制、十六进制(0x开头,范围:0~9,A~F)
0是零而非字母欧(扩展)
int a1 = 0;
byte a2 = 10;
short a3 = 40;
long a4 = 100L;
int a5 = 0b0101;
int a6 = 010235;
int a7 = 0x1cf;
-
-
浮点类型
-
浮点类型最常使用double型
-
float型,一般要在数字后加大/小写F
-
浮点数是有舍入误差的,是接近但不等于,离散、有限的;要避免使用浮点数进行比较(扩展)
float b = 2F;
double b1 = 100;
-
-
字符类型char
-
使用单引号
-
可把字符型强制转换为数值;原因:所有的字符本质上时数字(扩展)
-
常见字符的数字:A-65,a-97
char firstName = ‘何’;
char sc = ‘A’;
System.out.println((int)sc); //65
-
-
Boolean型
-
其值只有true和false
-
很多选择结果的判断条件结果就是布尔型,如if语句(扩展)
boolean flag = true;
//常规写法
if(flag == true){}
//偷懒写法
if(flag){}
//Less is more!代码要精简易读,但建议初期按常规写法写代码
-
-
String不是关键词,是一个类,使用双引号
二、面试题
银行业务如何表示钱?使用float or double?
使用BigDecimal来表示,不使用浮点类型表示
float f = 0.1F; //0.1
double d = 1.0/10; //0.1
System.out.println(f==d); //false
System.out.println(f); //0.1
System.out.println(d); //0.1
三、思考
两次结果为什么不一样?(内存分析)
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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律