Java基本数据类型与类型转换实例分析 Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间。Java基本数据类型包括整型、浮点型、字符型和布尔型等。 整型 整型的数据类型包括byte、short、int和long四种。他们的大小范围如下: * byte:占8个bit,表示256个数(28)。最大值为01111111,转成十进制为127;最小值为10000000,1是符号位,表示负数,转成十进制为-128。 * short:占16个bit,表示65536个数(216)。最大值为01111111 11111111,转成十进制为32767;最小值为10000000 00000000,1是符号位,表示负数,转成十进制为-32768。 * int:占32个bit,表示4294967296个数(232)。最大值为01111111 11111111 11111111 11111111,转成十进制为2147483647;最小值为10000000 00000000 00000000 00000000,1是符号位,表示负数,转成十进制为-2147483648。 * long:占64个bit,表示18446744073709551616个数(264)。最大值为01111111 11111111 11111111 11111111 11111111 11111111 11111111 11111111,转成十进制为9223372036854775807;最小值为10000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000,1是符号位,表示负数,转成十进制为-9223372036854775808。 在Java中,整数默认类型为int。例如,`int i = 10;`是正确的,但`byte b = 10;`会自动提升为int类型。 浮点型 浮点型的数据类型包括float和double两种。他们的大小范围如下: * float:占32个bit,表示小数的值。 * double:占64个bit,表示小数的值。 在Java中,小数默认类型为double。例如,`double d = 10.2;`是正确的,但`float f = 10.2;`需要加上f,如`float f = 10.2f;`。 特殊浮点值 * POSITIVE_INFINITY:表示正无穷。 * NEGATIVE_INFINITY:表示负无穷。 * NaN:表示非数值。 所有的正无穷大数值都是相等的,所有的负无穷大数值都是相等的;而NaN不与任何数值相等,不与任何数值相等。 字符型 字符类型的数据类型为char。char的字符编码是Unicode编码,所以char支持中文。 布尔型 布尔类型的数据类型为boolean。boolean只有两个值:true和false。 类型转换 在Java中,有自动类型转换和强制类型转换。 自动类型转换:例如,`byte b = 10; long l = b;`,自动将byte转换为long。 强制类型转换:例如,`byte b = (byte) 600;`,强制将int转换为byte。 转换规则: 1. 即使是同类型计算,在运算中byte、short、char也要先转化为int型。 2. 转换规则:在A中,可认为在“普通数字”计算过程中先计算得出结果,然后将结果转换为目标类型。 在Java中,如果不注意类型转换,可能会出现编译错误或运行时错误。例如,`byte b1 = 3, b2 = 4; byte b = b1 + b2;`,编译失败,因为两个byte变量的运算结果自动提升为int类型。
- 粉丝: 5
- 资源: 939
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助