linha 2: b é falso.
linha 3: b recebe a negação de b, sendo assim, b é true. Como b é true, entra na primeira expressão do operador ternário, que é outra expressão com operador ternário, onde b recebe novamente a negação de b, tornando b falso (pois ele era true). Como b é falso no segundo operador ternário, é retornado a segunda parte do mesmo que é “hello” para a String s.
[quote]linha 2: b é falso.
linha 3: b recebe a negação de b, sendo assim, b é true. Como b é true, entra na primeira expressão do operador ternário, que é outra expressão com operador ternário, onde b recebe novamente a negação de b, tornando b falso (pois ele era true). Como b é falso no segundo operador ternário, é retornado a segunda parte do mesmo que é “hello” para a String s.
[]'s[/quote]
Obrigado, davidbuzatto. Era isso mesmo que eu queria (:
Outra pergunta(se possível).
Queria saber se tem um jeito específico de ler esta parte do codigo:
Pelo que parece você ainda não entendeu muito bem operador ternário.
Exemplo:
boolean b = false;
System.out.println( b ? "b é true" : "b é false" );
//é o mesmo que:
if(b){
System.out.println( "b é true" );
}
else{
System.out.println( "b é false" );
}