Java中的数据类型

来源:互联网 发布:有哪些域名交易网站 编辑:程序博客网 时间:2024/06/05 16:27

数据类型

java是一种强类型语言,意味着必须为每一个变量声明一种类型。在Java中,共有八种基本类型。其中四种整型、1种浮点型、1种用于表示Unicode编码的字符单元的字符类型char和一种用于表示真值的boolean类型。

1. 整型

类型 存储需求 取值范围 int 4字节 -2147483648-2147483647 short 2字节 -32768-32767 long 8字节 -9223372036854775808-9223372036854775807 byte 1字节 -128-127
  • 在C和C++中,int表示的整型与目标平台相关,而在Java中,所有的数值类型所占据的字节数量与平台无关。

2. 浮点类型

类型 存储需求 取值范围 float 4字节 大约±3.40282347E+38F(有效位数为6~7位) double 8字节 大约±1.79769313486231570E+308(有效位数为15位)
  • float类型的值有一个后缀F,没有后缀的浮点数默认为double类型。
  • 常量Double.POSITIVE_INFINITY、Double.NEGATIVE_INFINITY和Double.NaN分别表示正无穷大、负无和NaN(不是一个数字)
  • 浮点数不适用于禁止出现舍入误差的金融计算中。例如,命令System.out.println(2.0-1.1)将打印出0.8999999999999999,而不是0.9。

3. char类型

特殊字符的转义序列符

转义序列 名称 Unicode值 \b 退格 \u0008 \t 制表 \u0009 \n 换行 \u000a \r 回车 \u000d \” 双引号 \u0022 \’ 单引号 \u0027 \ \ 反斜杠 \u005C
  • 在基本的多语言级别中,每个字符用16位表示,通常被成为代码单元(code nuit),而辅助字符采用一对连续的代码单元进行编码。
  • 强烈建议不要在程序中使用char类型,除非确实需要对UTF-16代码单元进行操作。
  • 两个char类型的数据相加之后自动转换为int型,然后相加,例:
//调用s.charAt(n)将返回位置n的代码单元,n介于0~s.length-1之间String greeting="Hello";char first=greeting.charAt(0);char last=greeting.charAt(4);System.out.println(first+last);
输出结果为183

注:H的ASCII码值为72,o的ASCII码值为111,72+111=183


4.boolean类型

  • 整数值和布尔值之间不能进行相互转换。
  • 在C++中,数值或指针可以代替boolean值。值0相当于布尔值false,非0相当于布尔值true。