Para que serve o ! e o != no Java

5 respostas
A

Por exemplo:

if (!Coco.equals(oi))

{

//Resto do código

// Coco é uma String

}
Outro:

if (coco != 2002)

{

//Resto do código

//Coco é um int

}

5 Respostas

Sharkns

“!” é o operador lógico não/negação

no seu código seria mais ou menos assim:

se coco NÃO FOR igual a "oi" { execute o código }

o operador “!=” é o operador matemático diferente

se coco FOR DIFERENTE DE 2002 { execute o código }

fiz um exemplo aqui pra ilustrar

String nome = "Gabriel";
		int numero = 0;

		if (!nome.equals("oi")) {
			System.out.println("é verdadeiro");
		}

		if (numero != 2002) {
			System.out.println("é diferente de: 2002");
		}

se retirar os operadores vai ver que o código não apresenta nada, espero ter ajudado

A

Valeu cara, me ajudou muito. Agora entendi.

ViniGodoy

Quando se fala de referências a objetos (como essa da String), há dois conceitos diferentes de igualdade:

Duas referências podem apontar para o mesmo objeto, portanto, conter o mesmo valor. Nesse caso, é o que o operador de == e != compara.
Duas referências à objetos diferentes podem conter objetos com o mesmo conteúdo. É o que o equals compara.

Por exemplo:

String x = new String("Olá");
String y = new String("Olá");
String z = x;

System.out.println(x == z); //Retorna true, apontam para o mesmo objeto
System.out.println(x == y); //Retorna false, apontam para objetos diferentes
System.out.println(x.equals(y)); //Retorna true, os objetos tem o mesmo conteúdo

Nunca compare objetos (incluido o String) com ==.

U

na minha opiniao, conforme aprendi o ! significa negacao e o != significa diferente…

ViniGodoy

ulisses007:
na minha opiniao, conforme aprendi o ! significa negacao e o != significa diferente…

Exatamente. == compara se dois objetos tem a mesma identidade. != compara se tem identidade diferente.

Esses operadores não testam o conteúdo do objeto, diferentemente do que fazem com tipos primitivos (int, float, double, etc.)

Criado 6 de fevereiro de 2013
Ultima resposta 7 de fev. de 2013
Respostas 5
Participantes 4