Depois de uma longa data sem mexer com java, estou voltando para desenvolver pra web, preciso me familiarizar com sintaxe :lol: ....bom, deixando o papo de lado.
Andei lendo e o java usa o .equals para comparação de duas strings, desta forma que fiz ele (Método) sempre retorna Liberado, independete se achou ou não algum resultado.
public String pesquisaCredito(String pessoa){
for (int i=0; i<array.length; i++){
if (array[i].equals(pessoa)){
return "Liberado";
}
}
return "Bloqueado";
}
obs.: alterei o nome das variaveis pra usar algumas convensões de nomeclatura.
R
rodrigomaiaPJ
só te lembrando que o equals é case sensitive…
manda imprimir os dois parametros antes do if e vê o valor deles…
[]'s
C
cmaismaisejavaPJ
“jairelton”:
Tente:
public String pesquisaCredito(String pessoa){
for (int i=0; i<array.length; i++){
if (array[i].equals(pessoa)){
return "Liberado";
}
}
return "Bloqueado";
}
obs.: alterei o nome das variaveis pra usar algumas convensões de nomeclatura.
Nesse modelo a string de Retorno seria pesquisaCredito?
Porque o modelo acima, no qual uso o if dessa forma:
if(condicao)
{
acao1
}else{
acao2
}
não funciona?
Att.
J
jaireltonPJ
O seu não funciona, porque se ele achar alguma coisa, continua testando, se o proximo não for igual, ele coloca bloqueado onde deveria ser liberado, a forma mais simples de corrigir seria colocar um break aí mas tá parecendo programação procedural, isso é orientação a objetos, então use como deve ser... :wink:
Ainda não é o ideal, pois o ideal seria você passar esse array e o nome da pessoa como parametro e receber de volta um boolean, mas já melhora!
C
cmaismaisejavaPJ
"jairelton":
O seu não funciona, porque se ele achar alguma coisa, continua testando, se o proximo não for igual, ele coloca bloqueado onde deveria ser liberado, a forma mais simples de corrigir seria colocar um break aí mas tá parecendo programação procedural, isso é orientação a objetos, então use como deve ser... :wink: