Du iterierst mit einer Schleife über das Array und führst dann deine Operationen durch. Eine Ferndiagnose kann ich aber leidee nicht machen. Ein bisschen Code wäre gut
PS: nicht die Java-Tags vergessen
publicstaticStringnaechsteKennzeichen(String kennzeichen){Pattern p =Pattern.compile("^[A-Z]{1,2}[1-9]{1,3}[A-Z]{1,3}");Matcher m = p.matcher(kennzeichen);String a ="";//String zeichen = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";if(m.matches()){char[] liste = kennzeichen.toCharArray();for(int i =0; i <= liste.length;i++){if(i == liste.length){return kennzeichen.substring(0, kennzeichen.length()-1)+"";}}}else{
a = kennzeichen;}return a;}
Du läufst ein Mal über das Array und wenn du das Ende erreicht hast, dann gibst du etwas zurück. Aber du machst nichts während du drüberläufst.
PS: Die Rückgabe macht man normalerweise nach der Schleife und nicht mit einem if. Das hängt mit der Performance zusammen (der Unterschied ist nicht merklich aber trotzdem sollte man sich einen performanten Stil angewöhnen).
Diesen soll ich in ein charArray umwandeln, was ich auch gemacht habe.
Danach will ich die Buchstaben immer erhöhen. also aus A wird B und aus B C. Aus X wird Y usw.
Desweiteren möchte ich, dass aus 0 1 und 1 2 usw wird.
Dabei wird nur das letzte Zeichen ersetzt, also in diesem Fall das C.
PS: Die Rückgabe macht man normalerweise nach der Schleife und nicht mit einem if. Das hängt mit der Performance zusammen (der Unterschied ist nicht merklich aber trotzdem sollte man sich einen performanten Stil angewöhnen).
Warum denn dass, eine Schleife hat auf prozessorebene doch nur GoTo Befehle, wenn man mit einem return diese Befehlskette unterbricht und die Funktion dann vom Stack genommen wird, ist es doch völlig gleich ob man nach einer Schleife den return macht.
Warum denn dass, eine Schleife hat auf prozessorebene doch nur GoTo Befehle, wenn man mit einem return diese Befehlskette unterbricht und die Funktion dann vom Stack genommen wird, ist es doch völlig gleich ob man nach einer Schleife den return macht.
Wenn das if in der Schleife bleibt, hat einmal die Schleife ihre Abbruchbedingung, die in dem if noch mal geprüft wird und dementsprechend wird gehandelt. Das hieße diese Bedingung wird doppelt geprüft, was nicht nötig ist.
Die Schleife bricht ab, wenn i nicht kleiner oder gleich der Länge von liste ist. Das if wird ausgelöst, wenn i gleich der Länge von liste ist. Dann kann der Inhalt des ifs auch hinter die Schleife. Das spart zwei Zeilen Code, macht ihn IMHO übersichtlicher und es wird eine Vergleichsoperation eingespart.
Ich habe mich falsch ausgedrückt. Ich meinte die Rückgabe in DIESEM SPEZIELLEN FALL. Nicht generell.
Warum denn dass, eine Schleife hat auf prozessorebene doch nur GoTo Befehle, wenn man mit einem return diese Befehlskette unterbricht und die Funktion dann vom Stack genommen wird, ist es doch völlig gleich ob man nach einer Schleife den return macht.
Das wäre mir jetzt auch neu. Wie ist denn die Alternative? Schleife breaken und dann return? Das dürfte keinen Unterschied machen, ist wohl eher noch "schlechter".