Java数据类型扩展
2022/7/17 1:15:17
本文主要是介绍Java数据类型扩展,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
数据类型扩展
整数
如何表示二进制,八进制,十六进制
二进制 0b 十进制 八进制 0 十六进制:0x
public class Demo01 { public static void main(String[] args) { int i1=10; int i2=010;//八进制 int i3=0x10;//十六进制 0~9 A~F System.out.println(i1); System.out.println(i2); System.out.println(i3); System.out.println("************************************"); } }
运行结果:
浮点数
银行业务怎么表示?
如果用浮点数来表示,会出现以下问题:
public class Demo02 { public static void main(String[] args) { float f=0.1f;//0.1 double d=1.0/10;//0.1 System.out.println(f); System.out.println(d); System.out.println(f==d); System.out.println("************************************"); float f1=23333333333333333f; double d1=f1+1; System.out.println(f1); System.out.println(d1); System.out.println(f1==d1); System.out.println("************************************"); } }
运行结果:
由运行结果可以明显看出,f和d在逻辑上都等于0.1,但是(fd)的结果是false;d1=f1+1,但是(f1d1)的结果是true。这是因为float的精度是有限的,所有表示出来的点是离散的,在与double比较时和舍入误差,与最后的结果的关系时接近但不等于。所以最好完全使用浮点数进行比较。
现在,在银行表示钱时,一般使用数学工具类:BigDecimal
字符
由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。
由低到高的顺序为:
byte,short,char,int,long,float,double
运算中,不同类型的数据先转化为同一类型,然后进行运算。
public class Demo03 { public static void main(String[] args) { char c1='a'; char c2='中'; System.out.println(c1); System.out.println((int)c1);//强制转换 System.out.println(c2); System.out.println((int)c2);//强制转换 System.out.println("************************************"); char c3='\u0061'; System.out.println(c3); } }
运行结果:
注意点:
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干的类型
3.在把高容量转换到低容量的时候,强制转换
4.转换的时候可能存在内存溢出,或者精度问题
这篇关于Java数据类型扩展的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26Java语音识别项目资料:新手入门教程
- 2024-11-26JAVA语音识别项目资料:新手入门教程
- 2024-11-26Java语音识别项目资料:入门与实践指南
- 2024-11-26Java云原生资料入门教程
- 2024-11-26Java云原生资料入门教程
- 2024-11-26Java云原生资料:新手入门教程
- 2024-11-25Java创意资料:新手入门的创意学习指南
- 2024-11-25JAVA对接阿里云智能语音服务资料详解:新手入门指南
- 2024-11-25Java对接阿里云智能语音服务资料详解
- 2024-11-25Java对接阿里云智能语音服务资料详解