关闭

Java学习笔记--数据类型

210人阅读 评论(0) 收藏 举报
分类:

    Java是一种强类型数据语言。这就意味着必须为每一个变量声明一种类型。在Java中,共有8种基本

类型,其中4种整型、2种浮点型、1种用于表示Unicode编码的字符单元的字符类型char和1种用于表示

真假的boolean类型。

    另外,Java有一个能够表示任意精度的算术包,通常称为大数据,但是它不是一种Java类型,而是一

个Java对象。

1.整型

类型 占用字节 取值范围
byte 1字节 -128~127
short 2字节 -32768~32767
int 4字节 -2147483648~2147483647
long 8字节 -9223372036854775808~9223372036854775807

    Java没有任何无符号类型。

    在Java中,整型的范围与运行Java代码的机器无关。

    长整型数值有一个后缀L,十六进制数值有一个前缀0x,八进制有一个前缀0.

2.浮点类型

类型 占用字节 取值范围
float 4  
double 8  
double表示的数值精度是float的两倍(有人称之为双精度).绝大应用程序都采用double类型。在很多情况下,

float类型的精度很难满足需求,所以只有很少情况适合使用float类型。

float类型的数值有一个后缀F,没有后缀F的浮点数值默认为double类型。当然也可以在浮点数值后添加后缀D。

下面是用于表示溢出和出错情况下的三个特殊的浮点数值:

a)正无穷大

b)负无穷大

c)NaN( 不是一个是数字)

例如一个正数除以0的结果为正无穷大,计算0/0或者负数的平方根结果为NaN。

常量Double.POSITIVE_INFINITY,Double.NEGATIVE_INFINITY和Double.NaN分别表示这三个特殊的值。

注意:

    1.不能这样检测一个特定值是否等于Double.NaN:

if(x == Double.NaN)  // is never true

所有“非数值”的值都认为是不相同的。然而,可以使用Double.isNaN方法:

if(Double.isNaN(x)) //check whether x is "not a number"

    2.浮点型数值不适用于禁止出现舍入误差的金融计算中。如果需要在数值计算中不含有任何舍入误差,

就应该使用BigDecimal类。

3.char类型

char表示单个字符,通常用来表示字符常量。

'A'是编码为65所对应的字符常量。

"A"是一个包含字符A的字符串。

4.boolean类型

    boolean类型有两个值:false和true,用来判定逻辑条件。整型值和布尔值之间不能进行相互转换。

    if(x=0) 语句在Java中不能通过编译,原因是整数表达式x=0不能转换为布尔值。


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:46296次
    • 积分:1063
    • 等级:
    • 排名:千里之外
    • 原创:48篇
    • 转载:76篇
    • 译文:0篇
    • 评论:3条
    最新评论