考虑以下代码:
public void convertTime()
{
DateFormat df = new SimpleDateFormat(dateFormat);
Date date;
Date date2;
date = df.parse("15/01/2010 21:58:54");
date.getTime(); //produces 1263585534000
date2 = new Date(date.getTime()); //this is ok, compiles
date2 = new Date(1263585534000); //gives an error: The literal 1263585534000 of type int is out of range
}
我想知道如何将这个长数字转换为日期格式以及为什么我会收到此错误?
谢谢
答案 0 :(得分:8)
1263585534000大于2 ^ 31-1。使用L
表示Long。
date2 = new Date(1263585534000L);
答案 1 :(得分:3)
date2 = new Date(1263585534000L);
以L为长文字结尾,表示它是一个长数字。