首先我知道这是比较日期的坏方法,但我不明白如何评估字符串以包含2个值之间的数据。例如,在此代码中,我如何列出tdate 1和2上发生的事务,以及它们之间的事务。
tdate信息设置如11/07/2013
System.out.println("Start Date: ");
tdate = in.next();
System.out.println("End Date: ");
tdate2 = in.next();
transactionSet trr = new transactionSet();
for(int idx = 0; idx < ts.getNumTrans(); idx++){
t = ts.retrieve(idx);
if (t.getTdate().equals(tdate) || t.getTdate().equals(tdate2)){
trr.insert(t);
}
}
答案 0 :(得分:2)
SimpleDateFormat format = new SimpleDateFormat("d/M/yyyy"); // If this is the right format
Date first = format.parse(tdate);
Date second = format.parse(tdate2);
Date toCheck = format.parse(someDate);
if (toCheck.after(first) && toCheck.before(second)){
// ...
}
您可能希望在try / catch块中执行此操作,以防输入的日期格式不正确。