5511D
#1
for(Empregado emp : empregados){
System.out.println("Nome: " + emp.getNome());
System.out.println("Salário: " + emp.salario());
if(emp instanceof Bonus){
System.out.println("Bonus: " + ((Bonus)emp).bonus());
}
Gostaria de saber qual a função do " : " no for em questão.
Qual seria a outra forma de orientação do mesmo ?
Não é um operador ternário.
Este for é chamado de enhanced for pela especificação.
Os 2 pontos não tem nenhuma função especial além de separar as duas partes deste for.
for ( parte1 : parte2 ) { /*... */ }
Na parte1 ele espera encontrar a declaração de uma variável.
Na parte2 ele espera encontrar uma expressão. Esta expressão deve ser ou um array ou uma classe que implementa a interface Iterable.
1 curtida