Java中的八种基本数据类型「建议收藏」

Java中的八种基本数据类型「建议收藏」Java中主要有八种基本数据类型:byte、short、int、long、float、double、boolean、char。各种数据类型作用:1、byte:8位、有符号的以二进制补码表示的整数。min:-128(-2^7)。max:127(2^7-1)。default:0。对应包装类:Byte。2、short:16位…

大家好,又见面了,我是你们的朋友全栈君。

Java中主要有八种基本数据类型:byte、short、int、long、float、double、boolean、char。             

各种数据类型作用:

1、byte:

8位、有符号的以二进制补码表示的整数。

min :    -128(-2^7)。

max:   127(2^7-1)。

default: 0。

对应包装类:Byte。

2、short:

16位、有符号的以二进制补码表示的整数;

min :    -32768(-2^15);

max:   32767(2^15 – 1);

default: 0;

对应包装类:Short。

3、int:

32位、有符号的以二进制补码表示的整数;

min :    -2,147,483,648(-2^31);

max:   2,147,483,647(2^31 – 1);

default: 0;

对应包装类:Integer。

4、long:

64位、有符号的以二进制补码表示的整数;

min :    -9,223,372,036,854,775,808(-2^63);

max:   9,223,372,036,854,775,807(2^63 -1);

default: 0;

对应的包装类:Long。

5、float:

单精度、32位、符合IEEE 754标准的浮点数;

float 在储存大型浮点数组的时候可节省内存空间;

浮点数不能用来表示精确的值,如货币;

default: 0.0f;

对应的包装类:Float。

6、double:

双精度、64位、符合IEEE 754标准的浮点数;

浮点数的默认类型为double类型;

double类型同样不能表示精确的值,如货币;

default: 0.0d;

对应的包装类:Double。

7、char:

char类型是一个单一的 16 位 Unicode 字符;

最小值是 \u0000(即为0);

最大值是 \uffff(即为65,535);

char 数据类型可以储存任何字符;

对应的包装类:Character。

8、boolean:

boolean数据类型表示一位的信息;

只有两个取值:true 和 false;

这种类型只作为一种标志来记录 true/false 情况;

对应的包装类:Boolean。
自动类型转换:

指不需要书写代码,由系统自动完成的类型转换。由于实际开发中这样的类型转换很多,所以 Java 语言在设计时,没有为该操作设计语法,而是由 JVM自动完成。

转换规则:从存储范围小的类型到存储范围大的类型。

具体规则为:byte→short(char)→int→long→float→double

也就是说 byte 类型的变量可以自动转换为 short 类型,示例代码:

byte b=10;

short sh=b;

这里在给sh赋值时,JVM首先将b的值转换成short类型然后再赋值给sh。

当然,在类型转换的时候也可以跳跃,就是byte也可以自动转换为int类型的。

注意问题:在整数之间进行类型转换的时候数值不会发生变化,但是当将整数类型特别是比较大的整数类型转换成小数类型的时候,由于存储精度的不同,可能会存在数据精度的损失。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156327.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Android内核开发 adb查看Linux kernel版本号

    Android内核开发 adb查看Linux kernel版本号Android内核基于Linuxkernel,需要知道Android系统的Linuxkernel版本号,才能对其内核进行编译移植

    2022年8月31日
    1
  • 京东云服务器_docker 京东自动签到

    京东云服务器_docker 京东自动签到众所周知,京东的京豆可以在付款时抵扣现金支付,多攒京豆还是能省下一部分钱的,而且京豆的获取页很简单,其中一种就是通过签到的方式获得,而每天手动签到实在太过麻烦,如果能实现自动化就好了,这时,依靠于openwrt,京东自动签到插件就诞生了,在路由器上设置一下便可以一劳永逸,无需人工全部自动化完成,签到后可以自动将签到详细结果推送到手机的微信上,这种签到方式是在自己的路由器上,完全不用担心安全和隐私泄…

    2022年9月17日
    2
  • 计算机实现原理专题–二进制减法器(三)「建议收藏」

    计算机实现原理专题–二进制减法器(三)「建议收藏」在计算机实现原理专题–二进制减法器(二)中指出当时的减法器需要人工判断被减数和减数的大小,如果能让计算机来自动判断就更好了。实际上计算机采用了补码来表达有符号数,在之前的java整形数值表示–基础中就说明了,采用补码可将减法变成加法。对于正数而言它的补码就是原码如21=0001_010…

    2022年9月17日
    2
  • ssm实验室设备管理系统_sql server集群

    ssm实验室设备管理系统_sql server集群教师预约实验室:(教室房间,预约时间,课程名称,加上班级名称(下拉框))2.可以撤销预约。(直接删除。不考虑是否用了)3.查看所有上课记录,点击进去每一个课程,可以看到学生交的报告。4.给作业打分。5.修改密码6.下载资料7.实验室使用排行榜管理员:1.仪器设备管理(增删改查:编号,名称,数量,价格,所属实验室名称)2.实验室管理:教室号,实验室名称。3.班级管理(cr…

    2022年10月12日
    3
  • pycharm和Anaconda环境下安装pygame「建议收藏」

    pycharm和Anaconda环境下安装pygame「建议收藏」pycharm和Anaconda环境下安装pygamewindows系统下安装windows系统下安装1.点击windows键打开Anacondaprompt2.打开之后输入condalist可以找到pip3.然后继续输入condainstallpip等安装完成4.pip安装完成之后输入pipinstallpygame如图所示安装成功。…

    2022年8月29日
    4
  • 防火墙

    防火墙

    2021年6月11日
    114

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号