x = false;
y = true;
System.out.print(x && y);
pq imprimi true e não false?
x = false;
y = true;
System.out.print(x && y);
pq imprimi true e não false?
Isso imprime false e não true.
Oi pmlm, obrigado mesmo por ajudar… mas não dá false, veja:
x = false;
y = true;
System.out.print(x && y);
neste caso abaixo dá false:
boolean x = false;
boolean y = true;
System.out.print(x && y);
Minha resposta pode até parecer meio obvia, mas está claro que se você fizer:
z = x && y;
Vai ter um retorno falso, pois && é uma “função” que retorna um valor boolean. Agora não estou entendendo o porque do retorno ser falso…
O que são x e y no primeiro caso então?
Não são boolean?
hehehe… caramba pensei q isso fosse mais fácil… hehehe… legal galera as explicações… veja:
tou estudando pra certificação via bloco de notas, no bloco de notas eu jogo
[code]public class TestarOperadoresLogicasETiposBooleanos{
/public static void main (String[] args){
int a = 1;
int b = 2;
//System.out.print(!(a == b));/
x = false;
y = true;
System.out.print(x && y);
}
}[/code]
imprimi true e não dá erro de compilação…
já no eclipse dá erro de compilação, faz com o q eu mude pra:
mas dá false
boolean x = false;
boolean y = true;
System.out.print(x && y);
é a pegadinha do malandro? rsrsrs
O primeiro caso dá erro de compilação de certeza.
O que pode estar a acontecer é não teres compilado e estares ainda a executar o código comentado de uma compilação anterior (e esse sim, imprime true)
ele só imprime o valor de x
a operação fica para depois, ele avalia como uma operação matematica 2+2+3, resulta em 4+3 e depois 7, o q ele faz e avaliar o x dentro do print e imprime seu valor.
se vc colocar assim
System.out.println((x && y));
vai imprimir certo.
Pelo menos foi a unica logica que pensei pra isso imprimir so o valor de x toda a vez
Aqui também.
Não vi problema nenhum,
na tabela da verdade isso é false i é o que imprimi
public class Main {
private static boolean x;
private static boolean y;
public static void main(String[] args) {
x = false;
y = true;
System.out.print(x && y);
}
}
O primeiro caso vai dar erro de compilação porque os tipos não estão declarados, pelo menos não no código postado. E a não ser que tenham sido declarados em outro
lugar, é compilation fail com certeza: Cannot find Symbol
x = false;
y = true;
System.out.println(y && x);
Agora, se vc fizer assim :
[code]
boolean x = false;
boolean y = true;
System.out.println(y && x);
//ou
System.out.println(x && y);
[/code]
Isso vai dar false, no eclipse, no bloco de notas ou em qualquer outra linguagem de programação, porque false E qualquer outra coisa é sempre false.
Rapaz, lembrei das aulas de tabela verdade, como até nosso colega acima lembrou.
V e V = V
V e F = F
F e V = F
F e F = F
Só vai ser verdade (true) quando ambos forem true. O_o
[quote=Felagund]ele só imprime o valor de x
a operação fica para depois, ele avalia como uma operação matematica 2+2+3, resulta em 4+3 e depois 7, o q ele faz e avaliar o x dentro do print e imprime seu valor.
se vc colocar assim
System.out.println((x && y));
vai imprimir certo.
Pelo menos foi a unica logica que pensei pra isso imprimir so o valor de x toda a vez[/quote]
WTF? Se calhar é melhor colocar mais ((())) para garantir que ele executa correctamente…
(sorry, não resisti)
Colocar mais parênteses para forçar a algo funcionar é mais ou menos parecido com aquela página Web que uma vez comentei - ela tinha um monte de
<strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong>
<strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong>
</strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong>
</strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong>
Isso vai para minha coleção.
A propósito, por que é que o pessoal não conhece a opção “Project -> Clean…” do Eclipse? Eliminaria uma boa parte dessas dúvidas bobocas.
oi gente… valeu mesmo pela ajuda pelo jeito me confundí… mas o pior é q tava assim no JavaRanch.com/game.jsp…
abraço,
AS