有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java从ArrayList中的对象检索项

我试图从存储在ArrayList中的对象中检索项。看看代码

MyList.add(new Car(year,make,available)); 

现在,我已将一个新的car对象存储到myList(arraylist)中。例如,我如何获得品牌

多谢各位


共 (2) 个答案

  1. # 1 楼答案

    您可以使用以下命令遍历列表:

    for (Car car : myList)
    {
        car.getMake(); //if you added getter, if you had not you can use addedCar.make;
    }
    

    或者,您可以使用项目的索引访问一个特定的项目:

    Car addedCar = myList.get(0); // 0 because you want the first item.
    addedCar.getMake(); //if you added getter, if you had not you can use addedCar.make;
    
  2. # 2 楼答案

    1. 正如前面提到的其他答案一样,您可以使用MyList。获取(索引),但这样做可能不是个好主意
    2. 在你的情况下,我建议使用地图,如果你有一些独特的标识符为每个汽车对象更好地做地图在这种情况下,你会得到有效的方式直接访问每个汽车对象在你的名单上
    3. 当然,从性能的角度来看,迭代列表可以得到一个非常糟糕的元素

    我的变体:

    final Map<Integer, Car> myMap = new HashMap<>();
    final Car newCar = new Car(year,make,available);
    myMap.put(index, newCar); // where 'index' whatever you want that is unique for this collection year or brand or object ID
    
    // get your object from collection
    System.out.println(myMap.get(index)); // output is newCar