Missing return statement et autres joyeusetés
Bonjour à tous.
Je suis en train de me faire la main sur quelques problèmes simples grâce à CodingBat. Je me heurte à un problème pour lequel je ne trouve pas la solution.
Le problème en question
Si je fais le code ci-dessous, 2 cas de tests ne sont pas validés et je ne comprends pas pourquoi :
Code:
1 2 3 4 5 6 7 8 9 10 11
| public String seeColor(String str) {
if (str.length() >=3){
if (str.substring(0,3).equals("red"))
return "red";
}
else if (str.length()>=4) {
if (str.substring(0,4).equals("blue"))
return "blue";
}
return ("");
} |
Par ailleurs, si j'utilise le code ci-dessous, j'ai droit à un "missing return statement" et je ne comprends pas non plus pourquoi :
Code:
1 2 3 4 5 6 7 8 9 10 11
| public String seeColor(String str) {
if (str.length() >=3){
if (str.substring(0,3).equals("red"))
return "red";
}
else if (str.length()>=4) {
if (str.substring(0,4).equals("blue"))
return "blue";
}
else return ("");
} |
C'est sans doute trivial et évident, mais je sèche. Une piste ? Merci d'avance.