基本类型转换

作者:李永健
撰写时间:2019年 07月25日
开发工具与关键技术:MyEclipse10,java
从低级转换到高级图:
在这里插入图片描述
虚线说明可能会损失精度

例子:
public class jian14 {
  public static void main(String[] args) {
	//自动转换有以下规律:(隐式类型转换)
    // boolean 类型是不可以转换为其他基本数据类型
	//小的类型自动转化为大的类型,例如:
	  byte ss = 11;
	  char oo = 'a';
	  short ss1 = ss;
	  int  ss2 = ss ;
	  int  ss3 = oo ;
	  long ss4 =ss;
	  System.out.println("byte——>short= "+ss1);
	  System.out.println("byte——>int= "+ss2);
	  //字符可以自动提升为整数
	  System.out.println("char——>int= "+ss3);
	  System.out.println("byte——>long= "+ss4);
	 //整数类型可以自动转化为浮点类型,可能会产生舍入误差 
	// Float和Double提供了快速的运算,然而问题在于转换为二进制的时候,
	//有些数字不能完全转换,只能无限接近于原本的值


	 System.out.println("<----------整型转换浮点型------------->");
	  int ff1 = 12;
	  float ff2 = ff1 - 11.9f;
	  double ff3 = ff1 - 11.8f;
	  System.out.println("int= "+ff1);
	  System.out.println("int——>float= "+ff2);
	  System.out.println("int——>double= "+ff3);
	 // 2、强制类型转换(显式类型转换)强制类型转换可能导致溢出或损失精度
	//大的类型强制转化为小的类型,例如:
	  System.out.println("<---------强制转换--------->");
	  int bb = 120;
	  byte bb1 = (byte) bb;
	  System.out.println(bb1);
	  //损失精度
	  long nn = Long.MAX_VALUE;
	  double nn1 = nn;
	  System.out.println("long = "+nn);
	  System.out.println("long ——>double = "+nn1);
	  //浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入
	  int kk= (int) 25.24;
	  int kk1= (int) -44.24;
	  System.out.println(kk);
	  System.out.println(kk1);
  }
}

结果图:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值