samedi 30 janvier 2016

What is happening here when the else statement is not used?

This is coding bat exercise: Java > Warmup-2 > stringX

What is the second block of code doing? Why does it produce the wrong answer?

public String stringX(String str) {
String answer = "";
for (int i = 0; i < str.length(); i++) {
if (str.substring(i , i+1).equals("x") && i != 0 && i != str.length()-1) {
answer = answer + "";
}
else {
answer = answer + str.substring(i , i + 1);
}
}
return answer;
}

vs

public String stringX(String str) {
String answer = "";
for (int i = 0; i < str.length(); i++) {
if (str.substring(i , i+1).equals("x") && i != 0 && i != str.length()-1) {
answer = answer + "";
}
answer = answer + str.substring(i , i + 1);
}
return answer;
}

Aucun commentaire:

Enregistrer un commentaire