Operadores Relacionais

3 respostas
F
int x1 = 20, x2 = 15;
	System.out.println(x1 & x2);
	System.out.println(x1 | x2);

Alguem sabe porque o resultado disso é:
4
31

Abracos…[/code]

3 Respostas

G

Olha este operador relacional que voce esta usando é do tipo binario. O que ele deve estar fazendo é comparando os valores em binario.
E se voce for usar em && e || dará um erro de operador! Voce deve usar variavies tipo booleanas para fazer estas comparações Espero tedo ajudado.
Se não posta ai de novo.

F

tipow eu quero saber pq quando eu uso isso ele da os valores informados acima.

F

A resposta é:

Operador bit à bit And
Quando os operadores são numeros, a operação & realiza uma operação bit à bit utilizando o AND em cada par de bits nos operandos.

0 + 0 = 0
0 + 1 = 0
1 + 0 = 0
1 + 1 = 1

package fother;

public class DemoOperadorBinarioAnd {
	
	public static void main (String[] args) {
		
		int op1 = 25; // 011001
		int op2 = 40; // 101000
		
		int r = op1 & op2; // 001000
		
		System.out.println("r = " + r); // r = 8
		
	}

}

Operador bit à bit Or

Quando os operadores são numeros, a operação | realiza uma operação bit à bit utilizando o OR em cada par de bits nos operandos.

0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 1

package fother;

public class DemoOperadorBinarioOr {
	
	public static void main (String[] args) {
		
		int op1 = 25; // 011001
		int op2 = 40; // 101000
		int r = op1 | op2; //111001
		
		System.out.println("r = " + r); // r = 57
		
	}
	                                      

}

Espero ter ajudado.

Criado 28 de outubro de 2006
Ultima resposta 28 de out. de 2006
Respostas 3
Participantes 2