ArrayListの項目の特定の属性を更新します

Sharkmen:

アイテムがありnamepricecondition属性を。私は維持したいpriceconditionそれに置き換わるものname

今の私は、新しいオブジェクトを作成することによって、これを考え出したが、私は、これが最良の選択肢ではないと思います。私は、ArrayListの項目のいずれかのフィールドを変更したいです

public void modify(String name) {
    for (Item i : item) {
        if (i.getName().equalsIgnoreCase(name)) {
            int position = item.indexOf(i);
            System.out.println("New name: ");
            String newName = in.nextLine();
            Item updated = new Item(newName, i.getPrice(), i.getCondition(), i.getSize());
            item.set(position, updated);

        }
    }
}
ルスラン:

あなたはに新しい項目を挿入する必要はありません ArrayList

public void modify(String name) {
    for (Item i : item) {
        if (i.getName().equalsIgnoreCase(name)) {
            System.out.println("New name: ");
            String newName = in.nextLine();
            i.setName(newName);
        }
    }
}

あなたが各フィールドのセット方法を持っているはずです。その後、この方法名、価格、サイズを更新することができます

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=177483&siteId=1