estou tentando usar operador ternario igual no C
(i < tam_max ? lista.append(entry).append(" — “) : lista.append(entry).append(” — "));
e da msg de erro
The left-hand side of an assignment must be a variable
como usar operador ternario em java?
obrigado
pdpbom
Maio 28, 2012, 7:39am
#2
Cara n testei aqui mas acredito que vc esta usando errado os ();
(i < tam_max ) ? lista.append(entry).append(" --- ") : lista.append(entry).append(" --- ");
Obs: não entendi oq vc quer com esse codigo + td bem … nas 2 opções fa a msm coisa
[quote=pdpbom]Cara n testei aqui mas acredito que vc esta usando errado os ();
(i < tam_max ) ? lista.append(entry).append(" --- ") : lista.append(entry).append(" --- ");
[/quote]
né isso n
o jeito certo
public String getListaTelefone() {
StringBuilder lista = new StringBuilder();
StringBuilder texto = new StringBuilder();
int tam_max = listaTelefone.size() - 1;
int i = 0;
for (Entry<Integer, String> entry : listaTelefone.entrySet()) {
/*
if (i < tam_max) {
lista.append(entry).append(" --- ");
} else {
lista.append(entry).append(" ");
}
*/
texto = (i < tam_max) ? texto.append(entry).append(" --- ") : texto.append(entry).append(" ");
i++;
}
return texto.toString();
}
no caso você precisa de alguém ou algo que receba o valor resultante do if.
tipo:
int i = x%2==0?5:10;
ou
[code]boolean b = x>0?true:false;
[/code]
pdpbom
Maio 28, 2012, 7:48am
#5
AAA esse faz mais sentido
(i < tam_max) ? texto.append(entry).append(" --- ") : texto.append(entry).append(" ");
mas esse ta correto também os parenteses
[quote=pdpbom]AAA esse faz mais sentido
(i < tam_max) ? texto.append(entry).append(" --- ") : texto.append(entry).append(" ");
mas esse ta correto também os parenteses [/quote]
vc tinha razão entre aspas, pq eu n sabia mas vc tem q definir uma variavel para receber o valor da expressão q seja do mesmo tipo que fica entre os ? e :
double maior = (a > b) ? sysout("a") : sysout("b");
por isso deixei o codigo de exemplo pra galera entender
frago?