private String getTimeDiff(Date D1, Date D2){
...
return diffString;
}
我想创建一个函数,它接受两个java.util.date对象并通过以下方式返回差异:
--> 如果时差超过一年,则只返回年差(如5年(
--> 如果不到一年但超过一个月,它应该只返回月差(如 2 个月(
--> 以此类推,表示天、小时、分钟、秒
这将用于填充良好的列表视图项,因此我正在寻找一种能够以最少的处理提供结果的解决方案。
谢谢
long t1 = d1.getTime();
long t2 = d2.getTime()
long diff = Math.abs(t1-t2);
int years = diff %(365*24*60*60*1000);
if(years >0){
return ""+years+" years";
}
int months = diff%(30*24*60*60*1000);
if(months>0){
return ""+months+" months";
}
并重复数周,数天,数小时等。 使用命名常量作为长度,我只是懒惰。