2016-06-05 3 views
0

Zum Beispiel habe ich eine Zeichenfolge s1 = "Java" und alternative Zeichen des Index s1 sollte durch die Zeichenfolge s2 = "va" ersetzt werden. das ist das Endergebnis sollte jvavva sein. Ich konnte das mit einem bestimmten Brief tun. Aber ich bin nicht in der Lage zu tun, wenn ich eine Zeichenfolge wie „Beispiel“ habenZeichen in jedem alternativen Index von S1 sollte ersetzt werden mit S2 mit Java

for(int i=0; i<s1.length(); i++){ 
     ch = s1.charAt(i); 
     replace = s1.replace("A", s2); 
    }  
    System.out.println(replace); 
+0

Warum haben Sie 'ch', wenn Sie es nicht verwenden? –

+0

Ich bin neu in Java, versuchte auf verschiedene Arten zu tun. eigentlich für obigen Code für Schleife ist auch nicht erforderlich, ich denke, – user6279422

Antwort

0

Also, tun Sie ein Zeichen oder eine Zeichenfolge innerhalb einer eine andere Zeichenfolge, um etwas anderes zu ersetzen?

Etwas wie folgt aus:

String text = "example"; 
    String replaceable = "a"; 
    String substitute = "va"; 

    text text.replaceAll(replaceable, substitute); 

    System.out.println(text); 

Edited:

StringBuilder result = new StringBuilder(); 
    String origin = "example"; 
    String substitute = "va"; 
    for(int i=0; i<origin.length(); i++){ 
     char ch = origin.charAt(i); 
     result.append((i%2 == 0) ? ch : substitute); 
    } 

, dass jedes andere Zeichen mit 'va' ersetzt.

+0

Ich wollte alternative Zeichen in einer Zeichenfolge ersetzen, das ist x, m, l und Ergebnis sollte evaavapvae – user6279422

0

Tun Bot alles ersetzen, nur eine neue Zeichenfolge erstellen.

Ihre Variablen verwenden, müssen Sie etwas wie folgt aus:

String replace=""; 
for(int i=0; i<s1.length(); i++){ 
    ch = s1.charAt(i); 
    if (i%2) == 0 { 
     replace += ch; 
    } else { 
     replace += s2; 
    } 
}  
System.out.println(replace); 

Es wäre besser gewesen, StringBuilder für Verkettung zu verwenden, aber Sie haben wahrscheinlich nicht diese Klasse noch gelernt.

+0

Vielen Dank. Ich werde versuchen, StringBuilder zu verwenden – user6279422

Verwandte Themen