Java - Splitting string durch einen umgekehrten Schrägstrich (\)

Ich versuche aufteilen einer Zeichenfolge durch einen backslash, aber ich habe Probleme. Ich bin mir sicher, dass ich den Ausdruck haben Recht, kann jemand Lesen, was ich getan habe, und sagen Sie mir, mein problem?


package taskstodo;

public class Task {
    StringBuilder name;
    StringBuilder note;
    StringBuilder date;

    void setName(String name) {
        this.name = new StringBuilder(name);
    }
    void setNote(String note) {
        this.note = new StringBuilder(note);
    }
    boolean dateIsValid() {
        String dateStr = date.toString();
        String[] numbers = (dateStr.split("[\\\\]"));
        for(String num : numbers) {
            System.out.println(num);
            if ((num.length()) != 2) {
                return false;
            }
            return true;
        }
        return true;
    }
    void setDate(String date) {
        this.date = new StringBuilder(date);
    }
}

Paket taskstodo;

public class TasksToDo {

public static void main(String[] args) {
    Task myTask = new Task();
    myTask.setDate("02/03/20");
    System.out.println(myTask.dateIsValid());
    Task myTask2 = new Task();
    myTask2.setDate("23/45/6001");
    System.out.println(myTask2.dateIsValid());
}

}


Den TasksToDo Klasse tests die Task-Klasse.

Zurückgegeben werden soll:

02
03
20
true
23
45
6001
false

Aber es gibt:

02/03/20
false
23/45/6001
false
  • Das Trennzeichen sollte "/" und nicht "\" nicht?
  • Nur haben könnten Legasthenie, wissen Sie.
  • Sie sollten überprüfen Sie das Datum-format mit einer regexp statt 🙂
  • Danke. Ich weiß nicht, wie ich verpasst, dass.
InformationsquelleAutor | 2012-02-06
Schreibe einen Kommentar