我有以下代码:

ArrayList<MyClass> MyArrayList = new ArrayList<MyClass>();

for (int i = 0; i < 10; i++){
    MyClass AuxObject = new Myclass(); // Generates an object whit random properties;
    MyArrayList.add(AuxObject);
}

/*

At this point lets suposse we have the list like this

Obj1
obj2
obj3
obj4
obj5
obj6
obj7
obj8
obj9
obj10

*/


MyClass MyAuxObject = null;

for(MyClass NObject: MyArrayList){
    if(NObject.SomeBoolean == true){
       MyAuxObject = NObject; // is valid?
   break;
   }
}


我的问题是“ MyAuxObject”将是对列表中某个对象的引用,还是应该为null?
我可以使用“ Nobject”获取列表中对象的引用吗?

最佳答案

在这段代码中

for(MyClass NObject: MyArrayList){
    if(MyObject.SomeBoolean == true){
       MyAuxObject = NObject; // is valid?
   break;
   }
}


您正在将代码提取到名为NObject的对象,但在MyObject上进行了比较

我觉得这不是您想要的,否则您可以从列表中获取第一个元素。

假设这是一个错字,则MyAuxObject将具有第一个匹配的NObject的值,如果不匹配,则它将是null

关于java - 在“for each” java中获取引用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22394627/

10-10 12:28