Ob die aktuelle Zeit, falls innerhalb einer bestimmten Zeitspanne, in der der aktuelle Tag in Java

Ich bin sicher, dass dies getan wurde 1000 mal in 1000 verschiedenen Orten. Die Frage ist, ich möchte wissen, ob es eine bessere/standard/schneller Weg, um zu überprüfen, ob die aktuellen "Zeit" ist die Zeit zwischen zwei gegebenen Werte in hh:mm:ss - format. Zum Beispiel, meine große business-Logik sollte nicht zwischen 18:00:00 and 18:30:00. So, hier ist was ich im Sinn hatte:

 public static  boolean isCurrentTimeBetween(String starthhmmss, String endhhmmss) throws ParseException{
  DateFormat hhmmssFormat = new SimpleDateFormat("yyyyMMddhh:mm:ss");
  Date now = new Date();
  String yyyMMdd = hhmmssFormat.format(now).substring(0, 8);

  return(hhmmssFormat.parse(yyyMMdd+starthhmmss).before(now) &&
    hhmmssFormat.parse(yyyMMdd+endhhmmss).after(now));
 }

Beispiel Testfall:

  String doNotRunBetween="18:00:00,18:30:00";//read from props file
  String[] hhmmss = downTime.split(",");
  if(isCurrentTimeBetween(hhmmss[0], hhmmss[1])){
   System.out.println("NOT OK TO RUN");
  }else{
   System.out.println("OK TO RUN");
  }

Was ich Suche, ist code, der besser ist

  • in der Leistung
  • in sieht
  • in Richtigkeit

Was ich bin nicht auf der Suche nach

  • third-party-Bibliotheken
  • Ausnahmebehandlung Debatte
  • Variablen-Benennungs-Konventionen
  • Methode Modifizierer Fragen
Suche nicht für Drittanbieter-Bibliotheken schließt eine Menge von falschen Antworten zu Joda Zeit...
Ja, Joda Time ist toll, aber alles, was ich verlangen für jetzt, ist dies eine Funktionalität in Bezug auf Zeit und Datum.
wie machst du es mit Jodatime? Ich habe die gleiche Anforderung und kann es mit joda time. Ich brauche, um herauszufinden, ob eine aktuelle Stunde ist in zwischen zwei Stunden.

InformationsquelleAutor ring bearer | 2010-03-18

Schreibe einen Kommentar