Assert para certificação

0 respostas
lipe82

Olá pessoal, estou com essa classe, para testar assert, que está imprimindo
Even number : 0
Odd number: 1
Even number: 2

mas eu achava que teria que dar looping infinito, pois, depois que ele verifica 0%2==0, que resulta em “true”, o programa decrementa 1 em i. i passa a valer -1 e o loop for incrementa 1 em i, i passa a valer 0 novamente. O programa fica nesse looping eternamente.
PORRRRRQQUUEEEEEE ???

public class AssertTest {
	public static void main(String[] args) {
		for(int i=0; i<10; i++) {
			try {
				assert i%2==0 : i--;
				System.out.println("Even number : " + i);
			} catch( AssertionError ae ) {
				System.out.println("Odd number : " + ++i);
			}
		}
	}
}
Criado 29 de setembro de 2008
Respostas 0
Participantes 1