当前位置:
首页 >
(JAVA学习笔记) 关于数据类型的一些扩展-面试时经常问到的问题
发布时间:2025/3/20
40
豆豆
生活随笔
收集整理的这篇文章主要介绍了
(JAVA学习笔记) 关于数据类型的一些扩展-面试时经常问到的问题
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
JAVA数据类型的一些扩展
一.整数类型扩展
整数各种进制表示方法:
//整数扩展 十进制 二进制0b 八进制0 十六进制0xint i = 1;int i1 = 0b10;int i2 = 010;int i3 = 0x10;System.out.println(i);System.out.println(i1);System.out.println(i2);System.out.println(i3);二.浮点类型扩展
我们通常用float或者double来进行浮点类型的定义,但其中也有一些问题要注意。
我们来看下面这部分代码:
输出结果:
在这里我们可以看到,i1和i2明明同样是0.1的数据对比却是false;
i3,i4明明不等,输出却是true;这是为什么呢?
浮点类型大概可以概括为以下几个特征:有限,离散,舍入误差,大约,接近但不等于。
所以程序中应尽量避免浮点数的比较,并且一些要求精确度较高的数字不要用浮点类型表示。
因此在需要表示一些要求精度较高的业务的时候,例如银行业务的钱。
通常用BigDecima提供的方法进行一些比较和运算。
三.字符类型的扩展
先看下面一组代码:
char c1 = 'a';char c2 = '中';System.out.println(c1);System.out.println((int)c1);//将c1强制转换为int类型System.out.println(c2);System.out.println((int)c2);//将c2强制转换为int类型char c3 = '\u0061';System.out.println(c3);输出结果:
可以看到字符’a’和字符’中’在被强制转换为int类型之后变成了对应的数字,由此可以看出字符从本质上来说就是数字。
所有字符都能在Unicode编码表上找到对应的数字表示,范围为U0000 - UFFFF;所以c3的输出结果就是’a’。
总结
以上是生活随笔为你收集整理的(JAVA学习笔记) 关于数据类型的一些扩展-面试时经常问到的问题的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 力扣(LeetCode)打卡刷题交流计划
- 下一篇: (JAVA学习笔记) 关于i++和++i