zoukankan      html  css  js  c++  java
  • Java语言基础——数据类型转换

    数据类型转换
    ——————正方向————————>
               char  ->  int -> long -> float ->double
    byte -> short -> int -> long -> float -> double
    <———————负方向————————

    自动类型转换
    正方向,小类型到大类型会自动完成。自动类型转换也叫"隐式类型转换",是自动发送的
    规则是:符号位会自动扩增,负数补1,整数补0,保证补码数值不变。(整数到浮点转换会损失精度)

    1 public class Demo {
    2    public static void main(String[] args) {
    3       char c = 'A';  //A对应的ASC编码为65
    4       int i = c;   //自动类型转换
    5       System.out.println(i); //输出65
    6    }
    7 }


    强制类型转换
    强制类型转换,也叫显示类型转换,是按照反方向进行的转换,这种转换会溢出,或者损失精度,要注意数据的范围。
    例:

     1 public class Demo {
     2    public static void main(String[] args) {
     3       int i1 = 128+256;//00000000 00000000 00000001 10000000
     4       byte b = (byte)i1;//砍掉前24位,剩余的部分100000000
     5       System.out.println(b); //输出-128(所以需注意,强转要注意类型取之范围)
     6   
     7       int i2 = 65;
     8       char c = (char)i2;
     9       System.out.println(c);//输出A
    10    }
    11 }
  • 相关阅读:
    .Uva&LA部分题目代码
    历史遗留问题列表
    hdu5681 zxa and wifi
    算法心得2:关于k个最小和问题的思考
    算法心得1:由$nlogn$复杂度的LIS算法引起的思考
    Codeforces Round #336 Marbles
    HDU 2571 命运
    POJ 3630 && HDU 1671 Phone list(静态字典树)
    静态字典树和动态字典树模板
    双向广搜
  • 原文地址:https://www.cnblogs.com/hqr9313/p/2439697.html
Copyright © 2011-2022 走看看