#1 23. Oktober 2008 Frage zur Methode split Hallo Warum kommt Java immer mit dem Fehler, dass in dem Array kein Wert gespeichert sei? Code: import java.util.Scanner; import java.util.GregorianCalendar; import java.lang.String; class Test { public static void main(String[] args) { Scanner k = new Scanner(System.in); System.out.println("Geben Sie das Geburtsdatum ein (1.11.1988):"); String birthday = k.next(); String birthdayArray[] = birthday.split("."); System.out.println(birthdayArray[1]); System.out.println(birthdayArray[1]); System.out.println(birthdayArray[2]); } } Ich gebe ja beim Keyboard einen Wert ein. Weiss jemand wie ich dass Problem beheben kann? MfG Joe The + Multi-Zitat Zitieren
#2 23. Oktober 2008 AW: Frage zur Methode split willste beim Array nicht erstmal die größe ala Code: String birthdayArray[] = new Array[3]; birthdayArray[] = birthday.split("."); angeben? //Edit und du solltest dann von 0 -> 2 ins array einlesen udn nicht 1,1,2 + Multi-Zitat Zitieren
#3 23. Oktober 2008 AW: Frage zur Methode split Code: import java.util.Scanner; import java.util.GregorianCalendar; import java.lang.String; class Test { public static void main(String[] args) { Scanner k = new Scanner(System.in); System.out.println("Geben Sie das Geburtsdatum ein (1.11.1988"); String birthday = k.next(); String[] birthdayArray = birthday.split("\\."); System.out.println(birthdayArray[0]); System.out.println(birthdayArray[1]); System.out.println(birthdayArray[2]); } } 2 änderungen 1) definiere deinen split zeichen "." mit "\\" davor sonst findet er die "." in deinem string nciht wenn du 1.11.1988 eingiebst 2) das array fängt immer mit dem index 0 an //EDIT: arrr zu langsam //EDIT2: Doppelpost bereinigung ähm die größe rbaucht er nicht angeben das wird soweit mit bekannt von split erleditgt das mit nur . als string zum splitten wird nicht gehen, versuchs mal da er in dem string keinen einzelnen string "." findet. definierst du allerdings Split("\\.") benutzt er den punkt als trennzzeichen selbes währe wenn du | als trenn zeichen willst und zb schriebst 12|12|1950 kurz gesagt, einige "spezielle" zeichen ausgenommen werden wenn sie als split trennzeichen benutz werden wollen zb.: "." oder "|" ... + Multi-Zitat Zitieren
#4 23. Oktober 2008 AW: Frage zur Methode split ahaaa... Na dass muss man auch mal wieder wissen... + Multi-Zitat Zitieren
#5 23. Oktober 2008 AW: Frage zur Methode split ja, bei anderen sprahcen kannst du den split "wert" sag ich jetzt mal.. auch als char angeben da gibt es dan diese probleme nicht so sehr, hat dafür wieder andere nachteile + Multi-Zitat Zitieren
#6 28. Oktober 2008 AW: Frage zur Methode split Ist zwar schon gelöst, das Problem aber ich wollte noch etwas anmerken, falls das noch jemand liest. Der Punkt (".") als Trennzeichen funktioniert nicht, weil das Trennargument bei Split als regulärer Ausdruck behandelt wird. Und in einem regulären Ausdruck bedeutet der Punkt, das an dieser stelle alle Zeichen stehen können. Um dem entgegenzuwirken, werden die Backslashes ("\\") davorgesetzt. Bei "normalen" Zeichen, die in regulären Ausdrücken keine besondere bedeutung haben, brauch man das natürlich nicht machen. Chillikid + Multi-Zitat Zitieren