所以我想比较时间,在快速谷歌搜索和阅读API后,我还没有找到任何解决方案。
所以这是我的情况
假设我有Time t
并且设置为某个时间。我想在此时加2分钟t =+ 2 minutes
。然后Time current
将设置为当前时间,我想使用Time.compare(Time,Time)
,因此请检查t
是否大于或小于current
时间。到目前为止,这只是伪代码,我不知道如何向Time变量添加2分钟。如果还有其他可行的选项也可以建议:)
答案 0 :(得分:1)
使用Date4j库,这将通过简单的api解决您的问题。
答案 1 :(得分:1)
了解日期比较
Date date = new Date(98, 5, 21);
Date date2 = new Date(99, 1, 9);
// make 3 comparisons with them
int comparison = date.compareTo(date2);
int comparison2 = date2.compareTo(date);
int comparison3 = date.compareTo(date);
// print the results
System.out.println("Comparison Result:" + comparison);
System.out.println("Comparison2 Result:" + comparison2);
System.out.println("Comparison3 Result:" + comparison3);
比较结果:-1
比较2结果:1
比较3结果:0
用于添加分钟
Date jamBanding = new Date();
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(jamBanding.getTime());
cal.add(cal.MINUTE, 2)
jamBanding = cal.getTime(); //here is the date now + 2 minute
答案 2 :(得分:0)
试试这个
String myTime = "02:50";
SimpleDateFormat df = new SimpleDateFormat("HH:mm");
Date d = null;
try {
d = df.parse(myTime);
} catch (ParseException e) {
}
Calendar cal = Calendar.getInstance();
cal.setTime(d);
cal.add(Calendar.MINUTE,10);
String newTime = df.format(cal.getTime());
System.out.println("New Time : " + newTime);
答案 3 :(得分:0)
尝试此方法
public boolean isTimeGreaterThenCurrent(Time t) {
long timeGiven = ((t.hour*60)*60) + (t.minute*60) + (t.second);
long timeCurrent=0;
Calendar c = Calendar.getInstance();
timeCurrent = ((c.get(Calendar.HOUR_OF_DAY)*60)*60) + (c.get(Calendar.MINUTE)*60) + (c.get(Calendar.SECOND));
if(timeGiven>timeCurrent){
return true;
}else{
return false;
}
}