如何使用该元素的字段值在ArrayList中找到该元素?

Fra*_*cis 1 java arraylist object

我正在用Java编写一个程序,该程序在一个类中接受用户输入的String。

在一个单独的类上,我有一个类类型为“ Item”的数组列表,其中包含字符串(itemName),int和double类型的元素。我想知道是否有办法将用户输入的String转换为“ Item”类型的对象(我听说这很困难),或者是否有办法访问数组的单个String元素itemName-将其与用户输入的String进行比较的列表。

Item.java

public class Item {
    private String name;
    private int monetaryValue;
    private double weight;

    // Getters and Setters
    // ...

    // Other methods
    // ...
}
Run Code Online (Sandbox Code Playgroud)

Ste*_*han 5

我在这里不使用反射:它使用火箭筒杀死蚊子。我宁愿使用纯Java。

在下面检查此示例:

List<Item> myList = new ArrayList<Item>();
String userInputValue;

// * Add some items to myList
// ...

// * Get user input value
// ...

// * Access the array list
int len=myList.size();
for(int i=0; i<len; i++) {
    if (myList.get(i).getItemName().equals(userInputValue)) {
        // Do something ...
    }
}
Run Code Online (Sandbox Code Playgroud)