Calendar c = Calendar.getInstance();
long diff = c.getTimeInMillis() - DateSaved.getTimeInMillis(); //result in millis
long daysDiff = (diff / (24 * 60 * 60 * 1000));
当我打印diff(整数天)时,一切正常......
问题从这里开始:
int daysDiffINT = (int) daysDiff;
int daysRemaining = (sumaINT/dailyINT) - daysDiffINT;
我需要使用一些int值继续我的long diff。
上面这个不起作用。控制台给我一个错误:“无效的int” 我搜索了一下,有成千上万的String转换为Int等。
但是我怎么能从长时间获得int?或来自long的字符串?
这让我抓狂:(
//感谢大家 - 你已经学会了如何制作我自己的应用程序:)
答案 0 :(得分:11)
长到int:
public static int safeLongToInt(long l) {
if (l < Integer.MIN_VALUE || l > Integer.MAX_VALUE) {
throw new IllegalArgumentException
(l + " cannot be cast to int without changing its value.");
}
return (int) l;
}
长到字符串:
public static String longToString(long l) {
return String.valueOf(l);
}