java基本数据类型

整数型

①java语言中的整数型字面值有三种表示方式
1)十进制:缺省默认的方式
2)八进制:需要以0开始
3)十六进制:需要以0x开始

		int a = 10;
		int b = 010;
		int c = 0x10;
		System.out.println(a);
		System.out.println(b);
		System.out.println(c);
		输出:
			10
			 8
			16

②java语言中的整数型字面值被默认当int型来处理,如果想当作long类型来处理,需要在‘整数型字面值’后面添加1/L。——类型转换

		int i=123;
		System.out.println(i);	//123是int类型
								//i变量声明也是int类型
								//int类型的123赋值给int类型的变量i。
		long j=456;
		System.out.println(j);//456是int类型  4个字节
								//j变量声明是long类型  8个字节
								//int类型456赋值给long类型变量j,存在类型转换
								//int转换成long 是自动转换机制
													
		long x=2587413690025;		//编译错误: 过大的整数: 2587413690025
		System.out.println(x);			
		
		long x=2587413690025L;		//解决错误,直接将2587413690025当成long类型
		System.out.println(x);	
		//小容量int转换成大容量long需要类型转型,属于自动类型转换
		//大容量long转换成小容量int需要强制类型转换,需要添加强制类型转换符 int q =(int)x;
		//添加强制类型转换符之后,编译通过,但是运行阶段可能损失精度(原码补码)。
		

byte类型:在整数字面值没有超过byte取值范围的,不需要强制类型转换,可以通过
byte=50;可以编译
byte=127;可以编译
byte=128;编译失败
扩展当一个整数字面值没有超过byte、short、char的取值范围,这个字面值可以直接赋值给byte、short、char的变量。

浮点型

  1. float 四个字节、double 八个字节
    对于 特殊行业来说,double精度太低,所以在JDK的SE类库中,提供了精度更高的类型,但是这种不属于基本数据类型,属于引用数据类型——java.math.BigDecimal
  2. java中的所有浮点型字面值,默认当中double来处理。要想该字面值当作float处理,需要在字面值之后添加F/f。
    在这里插入图片描述
  3. double和float在计算机内部存储的都是近似值。3.33333333…

布尔型

  • 在java中,布尔型只有两个值,true、false。没有其他值
    在底层存储时,boolean类型占用一个字节。实际存储中。false底层是0,true是1.

基本数据类型之间的互相转换

  1. 八种基本数据类型除布尔型之外,都可以互相转换
  2. 小容量向大容量转换:自动转换
    byte < short(char) < int < long < float < double
  3. 任何浮点型不管占多少字节,都比整数容量大,char和short可以表示的种类数目相同,但是char可以取更大的正整数。
  4. 大容量转换成小容量,是强制类型转换,需要加强制类型转换符,编译可以通过,运行会损失精度
  5. byte、short、char混合运算时,各自先转换成int类型再运算。
  6. 多种数据类型混合运算时,先转换成容量最大的那个类型,再运算。
    10/3 int型/int型 得int型 等于3
    long g = 10;
    byte h = (byte)(int)g/3 //编译错误(编译器只检查语法),g本身是long类型,转换成int类型,又转换成byte类型,g/3时,g为byte,3为int,结果为int类型。

(java系列是观看B站动力节点做的笔记·)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值