以下代码中,当用2768384146进行运算时报错 "过大的整数: 2768384146"
这样的问题如何解决?
import java.util.*;
import java.io.*;
import java.text.SimpleDateFormat;public class ss
{
        public static void main(String args[])
                throws Exception
        {
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                long tm;
                tm = (2768384146 % 10) + 1000000000;
                System.out.println(tm);
                String date = sdf.format(new Date(tm*1000L));
                System.out.println(date);
        }
}

解决方案 »

  1.   

    tm = (2768384146L % 10) + 1000000000;
      

  2.   

    基本类型:long 二进制位数:64 
    包装类:java.lang.Long 
    最小值:Long.MIN_VALUE=-9223372036854775808 
    最大值:Long.MAX_VALUE=9223372036854775807 基本类型:float 二进制位数:32 
    包装类:java.lang.Float 
    最小值:Float.MIN_VALUE=1.4E-45 
    最大值:Float.MAX_VALUE=3.4028235E38 基本类型:double 二进制位数:64 
    包装类:java.lang.Double 
    最小值:Double.MIN_VALUE=4.9E-324 
    最大值:Double.MAX_VALUE=1.7976931348623157E308