2016-05-03 7 views
0

Ich habe meine Aufgabe wie folgt definiert:Gibt es eine Möglichkeit, einem SimpleDateFormat-Objekt Sekunden hinzuzufügen, ohne ein neues Objekt zu erstellen?

DateFormat tf = new SimpleDateFormat("HH:mm:ss"); 

Wenn ich einen Eingang im Format bekommen - 10:00, es eine Ausnahme auslöst. Gibt es eine Möglichkeit, dass Sekunden (: 00) automatisch zu demselben Objekt hinzugefügt werden können, ohne ein neues Format wie (HH:mm) erstellen zu müssen, um diesen Eingang separat zu behandeln?

Antwort

1

Ist die Eingabe im String Format? Wenn ja, könnten Sie einen String verwenden und sehen, ob er 5 Zeichen lang ist, und fügen Sie den Wert 00 hinzu.

String input = "10:00"; 
if(input.length() == 5) 
{ 
    input += ":00"; 
} 

Ich bin sicher, es gibt bessere Möglichkeiten, dies zu tun, wie Stringbuilder verwenden, aber das ist eine Lösung, wenn die Eingabe in Form eines String ist.

+2

Was ist, wenn es 9:00 Uhr ist? Ich würde die Zeichenfolge teilen() und die Teile vor dem Hinzufügen des ": 00" zählen. – stdunbar

+0

Danke! Ja, die Eingabe war als String, also funktioniert das. Ich bin bereits mit der Eingabe beschäftigt, wenn es nicht im HH-Format ist, also ist das in Ordnung! Aber danke, dass du das auch gebracht hast! – 221b

+0

Ja, ich nahm an, dass es 5 Zeichen wie 09:00 Uhr sein würde. Sie müssen in die Antwort von stdunbar schauen, um es andernfalls zu behandeln. – Orin