Problemas com condição Java

estou sem entender do porque de um problema com as condições do if. O seguinte código verifica a repetição em uma combinação de números, mas no caso de eu colocar apenas 5 condições funciona. O problema é que preciso fazer com 20 comparações.

O erro que apresenta é o seguinte: is always is ‘false’

if (combinacao[0] != combinacao[1] && combinacao[0] != combinacao[2] && combinacao[0] != combinacao[3] && combinacao[0] != combinacao[4] && combinacao[0] != combinacao[5] && combinacao[0] != combinacao[6] && combinacao[0] != combinacao[7] && combinacao[0] != combinacao[8] && combinacao[0] != combinacao[9] && combinacao[0] != combinacao[10] && combinacao[0] != combinacao[11] && combinacao[0] != combinacao[12] && combinacao[0] != combinacao[13] && combinacao[0] != combinacao[14] && combinacao[0] != combinacao[15] && combinacao[0] != combinacao[16] && combinacao[0] != combinacao[17] && combinacao[0] != combinacao[18] && combinacao[0] != combinacao[19]{

Não falta fechar os parêntesis depois da condição 19?

E assim… esse if doi na alma. Vc não pode usar um loop for?

1 curtida

Cara, que coisa feia. Faça algo mais ou menos assim.

for(int i=1; i < 20; i++){
if(combinacao[0]!=combinacao[i]){
//code
}
}
1 curtida

Como o @FearX disse, esta meio feio esse codigo.

Mas se quiser manter dessa forma o correto seria acrescentar cada comparação dentro de um parentese para facilitar a vida do operador logico, por exemplo:

if ((combinacao[0] != combinacao[1]) && (combinacao[0] != combinacao[2]) && ( combinacao[0] != combinacao[3]) ... ){

1 curtida

discordo em parte - esses parentesis são totalmente desnecessarios (exceto talvez se isso for um array de booleanos. e se for eu vou querer imprimir esse codigo fonte e colocar fogo ).

eles podem deixar o codigo mais legível, porem a precedencia dos operadores vai falar mais alto.

1 curtida

Sou iniciante em java, sou muito leigo ainda. Obrigado pela ideia, mas tentei isto e algo parecido e não faço ideia de como fazer funcionar com esta lógica

Não funcionou