本帖最后由 吴小东 于 2012-6-10 00:19 编辑
第一个问题是 为什么我定义长整型b 会报错过大的整数
第二个问题是 如果定义的整型超过了长整型-2的63次方 到 2的63-1次方 该如何定义- public static void main(String[] args)
- {
- //long b = 512230173432;
- //long b = new Long(512230173432);//此处会报错 Test.java:9: 过大的整数: 512230173432
- long a = 1;//定义2的0次方
- for (int i = 1; i<100;i++ )
- {
- a = a*2;
- if (i>=60)
- {
- System.out.println("2的"+i+"次方为: "+a); //打印出以下值
- //2的60次方为: 1152921504606846976
- //2的61次方为: 2305843009213693952
- //2的62次方为: 4611686018427387904
- //2的63次方为: -9223372036854775808
- }
- if (a<=0)
- {
- break;
- }
- }
- }
复制代码 论坛菜鸟,第一次发帖,请大虾们多多指教;P |