「每天一个知识点」Java中的数据类型
Java语言本身是一个强类型的语言,这就意味着在声明一个变量时必须规定其数据类型。在Java中有8种基本数据类型,其中包括4个整数类型,2个浮点类型,1个字符型,1个布尔型
一、整数类型
整数类型用来表示没有小数部分的数值,它允许是负数。在Java中一共有4个整数类型,主要区别在于每个类型的存储大小以及取值范围,具体如下:
一般情况下,int类型是最常用的,但是在处理数字较大的数据时可能就需要用到长整型long。long类型的数据后边需要加上大写的L或者小写l,表示当前的数据类型为长整型,例如:
//声明两个长整型的变量
long n = 1000L;
long m = 1000l;
二、浮点类型
浮点类型用来表示带有小数部分的数值,在Java中一共有2个整数类型,主要的区别在于其存储的大小以及取值的范围,具体如下:
float类型的精度是小数点后6~7位,double类型的精度是小数点后15位,是float类型精度的2倍。double类型是最常用的浮点类型。如果要声明一个float类型的变量,需要在数值后边添加一个大写的F或者小写的f,如果没有F则会被默认位double类型。例如:
float f1 = 3.14F;
三、字符类型
char是一种用于表示Unicode编码的字符单元的字符类型,它通过一对单引号表示。例如’A‘就是65所对应的字符常量。这里涉及到了Unicode编码,可以参考下方的文章读懂编码的问题,这里就不做过多的介绍。
四、布尔类型
布尔(boolean)类型有两个值,true和false,通常用于逻辑判断。整数类型和布尔类型之间不可以相互转换。
五、数据类型转换
程序在运行期间,经常会将一种数据类型转换成另一种数据类型,此时就会涉及到数据类型转换的问题。数据类型在转换时分为”自动转换“和”强制转换“两种。
自动转换是指存储小的空间类型向存储大的空间类型转换,在转化时不需要额外的操作,直接进行转换。具体转换类型如下:
图中实线箭头表示转换的时候数据的精度不会有丢失,虚线的箭头表示在转换的过程中精度可能会造成丢失的情况。整数类型无论占用的空间有多大都是可以转换成浮点类型的。
强制转换是指存储大的空间类型向存储小的空间类型转换,例如double类型转换成int类型。此时就需要用到强制类型转换。但是这种类型转换可能会丢失一些信息。例如:
double n = 9.97;
int m = (int)n;
此时就是将double类型的变量n强制转换成了int类型的变量m,在转换时需要在变量前加上要转换的类型
六、总结
1、在Java当中共有8种基本数据类型,分别是byte、short、int、long、float、double、boolean、char。其具体分类如下:
2、数据类型之间是可以进行转换的,当小存储空间向大存储空间转换时为自动类型转换,当大存储空间向小存储空间转换时为强制类型转换
相关文章
- 跨域问题解决方案:CORS(跨域资源共享)
- 前端百题斩之原来跨域也是可以进行分类的
- 最常用的四种跨域解决方案(常见的跨域解决方案)
- 跨域问题的4种解决方案(跨域问题的解决方法)
- Spring Boot 进阶-Spring Boot中如何解决跨域问题
- Spring Boot跨域难题终结者:3种方案,从此告别CORS噩梦!
- 跨域问题的原因及解决方案详解(跨域问题的原因及解决方案详解图)
- NGINX 路由配置与参数详解(https配置、跨域配置、socket配置)
- JAVA面试|什么是跨域问题?Spring Boot如何解决跨域问题?
- postMessage 是如何解决跨域问题的?在工作中如何去使用