Operador ternario

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

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]

AAA esse faz mais sentido :slight_smile:

(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 :slight_smile:

(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?