Java的8种基本数据类型(primitive type)
来源:互联网 发布:登山机 知乎 编辑:程序博客网 时间:2024/05/03 12:03
在Java中,一共有8种基本数据类型(primitive type),其中有4种整型、2种浮点类型、1种用于表示Unicode编码的字符单元的字符类型char和1种用于表示真值boolean类型。
1.整型
类型 存储需求 取值范围
int 4字节 -2^32~2^32-1(-2147483648~2147483647)
short 2字节 -2^15~2^15-1(-32768~32767)
long 8字节 -2^63~2^63-1(-9223372036854774808~9223372036854774807)
byte 1字节 -2^7~2^7-1(-128~127)
长整型数值有一个后缀L(如1000000000L)。十六进制数值有一个前缀0x(如0xCAFE)。八进制有一个前缀0,例如,011对应八进制中的9。很显然,八进制表示法比较容易混淆,所以建议最好不要使用八进制常数。
从Java7开始,加上前缀0b就可以写二进制数。例如0b1111就是15。另外,同样是从Java7开始,还可以为数字字面量加下划线,如1_000_000,不过这些下划线也只是为了让程序变得更易读懂,java编译器会去除这些下划线的。
另外,从C++转行学java的同学注意了,Java没有任何无符号类型(sunsigned)!
2.浮点类型
类型 存储需求 取值范围
double 8字节 -1.79E+308 ~+1.79E+308(有效位数为15位)
float 4字节 -3.40E+38 ~ +3.40E+38(有效位数为6~7位)
float类型的数值有一个后缀F(例如,3.14F)。没有后缀F的浮点数值(如3.14)默认为double类型。当然,也可以在浮点数值后面添加后缀D(例如,3.14D)。
所有的浮点数值计算都遵循IEEE 754规范。下面是用与表示溢出和出错情况的三个特殊的浮点数值:
1、正无穷大——————Double.POSITIVE_INFINITY
2、符无穷大——————Double.NEGATIVE_INFINITY
3、NaN————————Double.NaN
(以上与相应的Float类型的常量一样)
值得注意的是:检测一个特定值是否等于Double.NaN是if(Double.isNaN(x)),而不是if(x ==Double.NaN)
警告:浮点数值不适用与禁止出现舍入误差的计算中(金融业)。例如,命令System.out.println(2.0-1.1)将打印出0.89999999999999999,而不是应该出现的0.9。其主要原因是浮点数值采用二进制系统表示,而在二进制系统中无法精确的表示分数1/10。这就好像十进制无法精确的表示1/3一样。另外经过一些实验,在保留小数点后足够多位后,在其他的语言中也会出现这个问题。如果需要在数值计算中不含有任何舍入误差,就应该使用BigDecimal类(java)。
3.char类型
用于表示单个字符。通常用来表示字符常量。例如:‘A’是编码为65所对应的字符常量。它与"A"不同,"A"是一个包含字符A的字符串。在Java中,char类型用UTF-16编码描述一个代码单元。但是强烈建议不要在程序中使用char类型,除非却是需要对UTF-16代码单元进行操作。并且最好将需要处理的字符串用抽象数据类型表示。
4.boolean类型
boolean(布尔)类型有两个值:false和true,用来判定逻辑条件。整型值和布尔值之间不能进行相互转换。
注意:在C++中,数值或指针可以代替boolean值。值0相当于布尔值false,非0值相当于布尔值true。在Java中则不是这样。
- Java的8种基本数据类型(primitive type)
- JAVA 基本类型 primitive主数据类型的包装类型
- Java SE 第二讲(原生数据类型 Primitive Data Type)
- Java的原始类型(Primitive Type)
- Java的原始类型(Primitive Type)
- java的primitive主数据类型和引用
- java primitive 数据类型长度
- 第二节:原生数据类型 Primitive Data Type
- 2、原生数据类型(Primitive date type)
- 2、原生数据类型(Primitive date type)
- 原生数据类型(Primitive Data Type)
- (JAVA SE 学习笔记)Java.SE.第002讲.原生数据类型 (Primitive Data Type)
- C++ 基本类型(Primitive Type) 的(const reference type) 参数有何用处?
- Java SE 第三讲(原生数据类型使用陷阱 Pitfall of Primitive Data Type)
- 圣思园张龙-Java SE 第二讲(原生数据类型 Primitive Data Type)
- 圣思园张龙-Java SE 第三讲(原生数据类型使用陷阱 Pitfall of Primitive Data Type)
- Java的数据类型分为两类:primitive和reference类型
- Java基本类型转换(Primitive Data Type Casting) int/byte & char
- 区别 gcc g++
- 新浪SAE云应用
- 《Tkinter GUI Application Development Blueprints》书中第五章音频播放器的bug改正
- 单例的三种模式
- 时序列数据库武斗大会之 TSDB 名录 Part 1
- Java的8种基本数据类型(primitive type)
- 飛飛(四)求1到m,1-1/2+1/3-1/4.....+(-1)^m*1/m
- jstl fmt标签
- ajax实现原理解析
- drwxrwxrwx权限对应数字
- Android设计模式-单例模式
- 飛飛(五)就拿胖子说事:成年男性的标准体重公式为:标准体重(kg)=身高(cm)-100,超标准20%为超重,比标准体重轻20%为超清。
- 关于高德LBS——Manifest的相关配置
- 《数据结构》2.4求两个递增链表的差集