for (int i = 0; i < 10; i++) {
try{
assert i%2==0:i--; // ---->
System.out.println("Even number " + i);
}catch(AssertionError e){
System.out.println(" Old number " + i);
}
}
}
A saída é Even number de 0 a 9,
duvida no assert i%2 ==0 : i–;
quando o assert for false, ele não teria que ir para catch, e nunca é feito i–.
Esse tipo de questão tem que ver no enunciado as seguintes opções que terão um peso poderoso nas respostas:
Qual será o resultado se o código for compilado assertions habilitada.
Qual será o resultado se o código for executado com assertions habilitada.
Isso deve ser prestado atenção, pois o código pode ser compilado e executado sem assertions habilitadas e a JVM nem reclamará pq ele esta ali. Simplimente irá inguinorar.
ahahh a pegadinha mora ai nessas questoes… ela informou se executa com assertion habilitada? heeh… nao é pq tem assert que quer dizer que foi compilava com ele habilitada ja q por padrao vem desabilitada heehe… o whizlabs tem muita questao assim como no exame também.
[quote=anderson.bonavides]Esse tipo de questão tem que ver no enunciado as seguintes opções que terão um peso poderoso nas respostas:
Qual será o resultado se o código for compilado assertions habilitada.
Qual será o resultado se o código for executado com assertions habilitada.
Isso deve ser prestado atenção, pois o código pode ser compilado e executado sem assertions habilitadas e a JVM nem reclamará pq ele esta ali. Simplimente irá inguinorar.
Espero ter ajudado.[/quote]
cara…entao eu posso compilar com elas ativadas…e executar com elas desabilitadas ou vice-versa?