[RESOLVIDO] Questão 2 Capítulo 4 SCJP 6

Bom dia a todos,

class Comp2 {
	public static void main(String[] args) {
		float f1 = 2.3f;
		float[][] f2 = {{42.0f}, {1.7f, 2.3f}, {2.6f, 2.7f}};
		float[] f3 = {2.7f};
		Long x = 42L;
		// insert code here
		System.out.println("true");
	}
}

And the following five code fragments:
F1. if(f1 == f2)
F2. if(f1 == f2[2][1])
F3. if(x == f2[0][0])
F4. if(f1 == f2[1,1])
F5. if(f3 == f2[2])

A minha duvida referente a essa questão está no fragmento F3. Só gostaria de esclarecer se ao comparar um primitivo float com um wrapper Long se é feito unboxing do Long ou se o operador de igualdade == verifica os valores sem precisar de autoboxing ou unboxing?

Obrigado.

[/quote]

A minha duvida referente a essa questão está no fragmento F3. Só gostaria de esclarecer se ao comparar um primitivo float com um wrapper Long se é feito unboxing do Long ou se o operador de igualdade == verifica os valores sem precisar de autoboxing ou unboxing?

Obrigado.[/quote]

Relaxa, o unboxing é feito, si o array float[][] f2 fosse do tipo wrapper (Float[][] f2 ) ai ocorreria um erro de compilação pois não é possível comparar um Long com um Float.

[quote=Henrique.tenorio]
Relaxa, o unboxing é feito, si o array float[][] f2 fosse do tipo wrapper (Float[][] f2 ) ai ocorreria um erro de compilação pois não é possível comparar um Long com um Float.[/quote]

Henrique,

Blz entendi, então quer dizer que com o operador de igualdade == eu posso comparar primitivos independente de que tipo seja cada um?

:smiley:

[quote=RodrigoM91][quote=Henrique.tenorio]
Relaxa, o unboxing é feito, si o array float[][] f2 fosse do tipo wrapper (Float[][] f2 ) ai ocorreria um erro de compilação pois não é possível comparar um Long com um Float.[/quote]

Henrique,

Blz entendi, então quer dizer que com o operador de igualdade == eu posso comparar primitivos independente de que tipo seja cada um?

:D[/quote]

Isso mesmo ex:

i[code]nt x = 2;
double y = 2.0

if(x ==y )
out.print(“Funfa”)
[/code]