java类型转换代码测试总结

public class TypeChange{
 /*
 5这个整数,byte,short,int,long都能够存储这个整数;
 基本原则:小转大,自动转;大转小,强制转;
 类型检查是在编译期,类型检查不影响转换的结果(类型检查只是为了检查)
 编译器优化:
 1.int类型的字面值在byte,short和char(0到65535)的数据范围内的时候,可以自动转换
 2.字面值得char类型数据,在byte范围内可以自动转换成整数类型
 其他:
 1.浮点类型转换为整型需要强制转换,并且省略掉小数部分
 2.整型转换为浮点类型,自动转
 3.类型转换必须是兼容的类型才能转换;比如boolean类型不能跟其他类型作转换
 运算符与类型转换:
 基本的原则:
 1.当参与计算的两个类型相同,结果就为该类型.
 2.当参与计算的两个类型一个范围大,一个范围小,那么结果为范围较大的类型
 特殊的情况:
 1.当范围小于int的整型参与运算的时候,都会先自动转换为int类型再参与运算
 2.当浮点类型与整型参与运算的时候,结果为浮点类型
 3.当字符类型与整型参与运算结果为整型
 拓展:
 当整型精度损失的时候,将会出现什么情况
 */
 public static void main(String[] args){
  byte by = 50;
  int i = by;
  i = 100;
  short sh = (short)i;
  System.out.println("i="+i);
  System.out.println("sh="+sh);
  //byte by1 = 100;
  //char ch = 65536;超出范围
  System.out.println(Character.MAX_VALUE+0);
  System.out.println(Character.MIN_VALUE+0);
  by = 'a';
  i = 'b';
  System.out.println("by="+by);
  System.out.println('我'+0);
  double dou = 5.0;
  i = (int)dou;
  i = 5;
  dou = i;
  float flo = i;
  System.out.println("i="+i);
  System.out.println("dou="+dou);
  System.out.println("flo="+flo);
  boolean boo = true;
  //i = (int)boo;
  //运算符与类型
  //by = 500 + 5;
  by = 5;
  byte by1 = 5;
  sh = 6;
  long lo = 5;
  long by2 = lo + by1;
  System.out.println("by2="+by2);
  dou = 5.5;
  i = 5;
  double dou1 = dou + i;
  System.out.println("dou="+dou);
  i = 6/5;
  System.out.println("i="+i);
  char ch = 'a';
  //by = lo + ch;
  System.out.println("i="+i);
  //浮点类型运算的时候,最好转换为整型原酸
  dou = 6.6;
  dou1 = 2.2;
  System.out.println("dou+dou1="+(dou+dou1));
  System.out.println("dou-dou1="+(dou-dou1));
  System.out.println("dou*dou1="+(dou*dou1));
  System.out.println("dou/dou1="+(dou/dou1));
  //例子,减法运算
  dou = ((int)(dou*10)-(int)(dou1*10))/10.0;
  System.out.println("dou="+dou);
  //整型精度损失
  by = (byte)130;
  System.out.println("by="+by);
 }
}

想要查看更多内容,请访问:http://how2j.cn?p=7870

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值