我无法理解在以下代码中创建 obj 和 obj2 对象的方式的区别。特别是,我不确定如何将原语转换为对象。看看这里的其他一些问题,我认为这是不可能的。但以下程序编译并运行良好。在第一种情况下,输出为假,在第二种情况下,输出为真。
public class Test {
public static void main(String args[]){
Integer num = new Integer(3) ;
Object obj = num;
Integer[] integerArr = {1, 2, 3, 4};
Object[] objArr = integerArr;
boolean contains = false;
for (int i = 0; i < objArr.length; i++){
if (objArr[i] == obj){
contains = true;
break;
}
}
System.out.println(contains);
int num2 = 3 ;
Object obj2 = num2;
Integer[] integerArr2 = {1, 2, 3, 4};
Object[] objArr2 = integerArr2;
boolean contains2 = false;
for (int i = 0; i < objArr2.length; i++){
if (objArr2[i] == obj2){
contains2 = true;
break;
}
}
System.out.println(contains2);
}
}