数据类型
1、整型 int(4个字节), 短整型short(2个字节),长整型long(8个字节),字节型byte(1个字节)。
2、字符型char(2个字节)
3、浮点型单精度float(4个字节)双精度double(8个字节)
4、布尔型boolean(1bit/1个字节)
1 byte = 8 bit
基本类型的转换
1、在java中基本类型可以相互转换,boolean类型比较特殊不可以转换成其他类型。
2、转换分为默认转换和强制转换:
默认转换:容量小的类型会默认转换为容量大的类型
Byte(1)-->short(2)->int(4)-->long(8)-->float(4)-->double(8)
char(2)-->
所有的浮点型(float、double)我们都统一的认为比整数容量都大,不看字节数。
Char 和 short在同一个等级下
Byte、short、char之间计算不会互相转换,首先先转换成int
Byte b1 = 10;
Short s1 = 20;
Int i1 = b1 +s1 ;
// java程序分编译期 和运行期
// 编译阶段只是知道b1 + s1 的结果是int类型。
// int类型无法直接赋值给byte类型
// byte b2 = b1 +s2;
// 可以通过
Byte b3 = 100;
强制转换:
将容量大的类型转换成容量小的类型,需要进行强制转换
注意:只要不超过范围可以将整形值直接赋值给byte,short,char
在多种类型混合运算过程中,首先现将所有数据转换成容量大的那种,再运算
double d = 5.998;
Int i = (int)d;
Byte b = (byte)5.998;
注意:强制类型转换时把占用空间大的类型转换为占用空间大小的类型时采用截取的方法,不会进行四舍五入。因此,试图将一个类型强制转换为另一个类型时,有时候会损失一些精度,甚至值完全不同。
变量:
关于java语言中的变量
1、java中如何定义变量,语法:
数据类型 变量名;
2、如何给变量赋值,语法:
变量名 = 值;
3、变量的本质是什么?
变量就是内存中的一块空间,这块空间有“类型”,“名字”,“值”
例如:
Int a ;// 在内存中开辟一块空间,这块空间的类型是整形,给这块空间名字起了一个名为a
// 赋值
a = 100;
// 通过变量名去访问那块内容
System.out.println(100);
// 重复访问
System.out.println(100);
System.out.println(100);
修改为:System.out.println(a);
深入变量:
//申请一块int类型的空间,起名i,并且赋值10
Int i = 10;
System.out.println(i);
// 重新赋值
i = 100;
System.out.println(i);
// 变量可以重新赋值,但不能重新声明
//在同一个域中,变量名不能重复。
// int i =200; // Error
不在同一区域中可以声明。(新方法中)
-------
// java语言中的变量必须先声明,再赋值,才能使用
int a;
a = 10;
System.out.println(a);
// 声明三个变量i1,i2,i3,类型都是int类型,i1,i2两个变量没有赋值,只有i3变量赋值。
Int i1,i2,i3 = 456;
// Error
// System.out.println(i1); // i1没有赋值不能访问。
System.out.println(i3);