过大的整数

public class 过大的整数{
  public static void main(String[] args){

    // 题目 long d = 2147483647
    // 可以吗?存在类型转换吗?
    // 2147473647默认被当做int来处理
    // d变量是long类型,小容量可以自动赋值给大容量。
    long d = 2147483647;
    System.out.println(d);

    // long e = 2147483648 编译器会报错吗?为什么?
    // 在java中,整数型字面量一上来编译器就会将它看做int类型。
    // 而2147483648已经超出了int的范围,所以在没有赋值之前就已经出错了。

    // 记住,不是e放不下2147483648,e是long类型,完全可以容纳2147483648.
    // 只不过2147483648本身已经超出了int范围。
    // long e = 2147483648; // 错误:整数太大
    // 怎么解决这个问题呢?
    long e = 2147483648L;
    System.out.println(e);
  }
}

过大的整数

上一篇:如何安装Windows Live Writer插件


下一篇:PVS让存储颤抖,系列博文之三:PVS的写缓存新技术之Win7桌面实测篇