您的位置:首页 > 编程语言 > Java开发

java类型转换代码测试总结

2017-12-02 21:52 295 查看
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*1
4000
0))/10.0;

  System.out.println("dou="+dou);

  //整型精度损失

  by = (byte)130;

  System.out.println("by="+by);

 }

}

想要查看更多内容,请访问:http://how2j.cn?p=7870
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: