我有两个hh:mm字符串,我想在它们之间进行比较。
我的意思是,我想添加或减去它们,进行操作。我有一个包含当前时间的字符串和另一个字符串,例如“15:00”。我想知道两个字符串之间有多少分钟,结果我可以通过减法来获取。 这可能吗?
答案 0 :(得分:3)
您可以使用SimpleDateFormat
对其进行解析,然后使用getTime()
类中的Date
方法获取以毫秒为单位的差异。
DateFormat f = new SimpleDateFormat("hh:mm");
Date d1 = f.parse(s1);
Date d2 = f.parse(s2);
long difference = d1.getTime() - d2.getTime(); // milliseconds
答案 1 :(得分:0)
这将让你开始..对以下两个字符串进行以下操作:然后进行必要的比较/加/减
String time1 = "15:00";
String time2 = "16:00";
DateFormat sdf = new SimpleDateFormat("hh:mm");
Date date1 = sdf.parse(time1);
Date date2 = sdf.parse(time2);
long milliSecondsDiff = date1.getTime() - date2.getTime(); //in milliseconds
int seconds = milliSecondsDiff/1000; //seconds
int minutes = seconds/60; //minutes
答案 2 :(得分:0)
您可以使用joda datetime:
public static void main(String[] args) {
DateTimeFormatter formatter = DateTimeFormat.forPattern("HH:mm");
DateTime first = formatter.parseDateTime("15:00");
DateTime second = formatter.parseDateTime("15:49");
Interval interval = new Interval(first, second);
System.err.println(interval.toDuration().getStandardMinutes());
}
看看here
使用持续时间还会给你一些其他简洁的方法,比如getStandardSeconds(),在这种情况下会给你2940。