Olá,
No código abaixo há um if implícito? Como devo interpretá-lo?
maiores = maiores.subList(0, maiores.size() > 3 ? 3 : maiores.size());
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Olá,
No código abaixo há um if implícito? Como devo interpretá-lo?
maiores = maiores.subList(0, maiores.size() > 3 ? 3 : maiores.size());
Boa noite, Roger! Como vai?
A estrutura maiores.size() > 3 ? 3 : maiores.size() vista no código se chama if ternário. Seria o mesmo que fazer:
if (maiores.size() > 3) {
return 3;
} else {
return maiores.size();
}Ou seja, nesse caso específico do código, o segundo argumento do método subList() será 3 se maiores.size() > 3 ou maiores.size() caso contrário. Sendo assim, a expressão que aparece antes do sinal de ? representa a condição do if, entre o sinal de ? e o sinal de : aparece o resultado caso a expressão condicional seja verdadeira e após o : é inserido o resultado caso a condicional seja falsa.
Pegou a ideia? Qualquer coisa é só falar!
Grande abraço e bons estudos!