Also habe ich eine Frage von einer Coding-Website gelöst, die ich ersetzen musste? mit einem a oder b vorausgesetzt es gibt keine zwei aufeinanderfolgenden a ... ich habe viel probiert und das ist der code den ich geschrieben habe. Obwohl der Code meiner Kenntnis nach korrekt ist, ist die Ausgabe immer dieselbe wie die Eingabe selbst, wenn ich diesen Code ausführe. Es werden keine Änderungen vorgenommen.String-Methode nicht die richtige Ausgabe geben
Beispielfall: Eingang:? Ababa? B? Ausgang: babababba
Eingang: ababb b Ausgang: ababbab
der Eingang A, B welken hat oder? Die Ausgabe muss so sein, dass sie im Wörterbuch den höchsten Vorrang hat.
Wie auch immer ich gebe, ich bekomme die gleiche Ausgabe. ? Wenn ich geben ab als Input bekomme ich die gleiche wie Ausgang mir bitte helfen
package Beginner;
import java.util.Scanner;
public class ExplRuin {
public static void main(String args[]){
String s;
Scanner in = new Scanner(System.in);
s = in.nextLine();
if(s.length()==1){
if(s.equals("?"))
s.replace("?", "a");
} else
{
if(s.toString().startsWith("?")){
if(s.contains("?b"))
s.replace("?b","ab");
else
if(s.contains("?a"))
- s.replace("?a", "ba");
}
if(s.endsWith("?")){
if(s.contains("a?"))
s.replace("a?", "ab");
else
if(s.contains("b?"))
s.replace("b?","ba");
}
if(s.contains("?a")||s.contains("a?")){
s.replace("?", "a");
}
else{
s.replace("?", "a");
}
}
System.out.print(s);
}
}
'String' ist unveränderlich, also musst du es schreiben wie 's = s.replace (...)' –