Java数据类型及其转换
一、Java数据类型
1、Java数据类型分类
Java是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存分配了不同大小的内存空间。
2、Java中基本数据类型在内存中占据存储大小
四种类型 | 数据类型 | 存储需求 | bit数 | 表数范围 |
整形 | byte | 1 byte | 1*8 | -128~127 |
short | 2 byte | 2*8 | -32768~32768 | |
Int | 4 byte | 4*8 | -2的31次方到2的31次方-1 | |
long | 8 byte | 8*8 | -2的63次方到2的63次方-1 | |
浮点型 | float | 4 byte | 4*8 | -3.403e38~3.403e38 |
double | 8 byte | 8*8 | -1.798e308~1.798e308 | |
char型 | char | 2 byte | 2*8 | —— |
boolean型 | boolean | 1 byte | 1*8 | false、true |
3、Java里面各类型数据声明
(1)Java 各整数类型和浮点数类型有固定的表数范围和字段长度,其不受具体操作系统的影响,以保证Java程序的可移植性。
(2)Java语言的整型常量默认为int型,浮点型常量默认为double型。
(3)long类型声明可以后加l或者L
(4)float类型声明可以后加f或者F
(5)char 型数据用来表示通常意义上的“字符”,Java 字符采用 Unicode 编码(全球语言统一编码),每字符占两个字节,因而可用十六进制编码形式表示。
(6)boolean 类型数据只允许取值 true 或 false ,不可以0或非0的整数替代true和false,这点和C语言不同。
二、Java变量定义
1、Java里不同数据类型的变量定义
(1)int x = 10; int y = 20;
(2)int x,y;
x = 10;
y = 20;
2、Java里使用变量注意事项
(1)作用域:变量定义在哪一级大括号中,哪个大括号的范围就是这个变量的作用域。相同的作用域中不能定义两个同名变量。
(2)初始化值:没有初始化值不能直接使用
(3)在一行上建议只定义一个变量,可以定义多个,但是不建议
三、Java里数据类型转换
1、数据类型转换注意
boolean类型不可以转换为其他的数据类型。
2、默认数据类型转换
(1)byte,short,char—int—long—float—double
(2)byte,short,char相互之间不转换,他们参与运算首先转换为int类型。
3、强制数据类型转换
(1)格式:目标类型 变量名=(目标类型)(被转换的数据);
(2)一般建议,最好不要随意使用强制类型转换,容易造成数据精度损失。
(3)容量大的数据类型转换为容量小的数据类型时,要加上强制转换符,但可能造成精度降低或溢出;使用时要格外注意。
(4)有多种类型的数据混合运算时,系统首先自动的将所有数据转换成容量最大的那一种数据类型,然后再进行计算。