如何使用List <object>将对象值设置为java?</object>中的模型类

时间:2014-12-25 03:00:22

标签: java arrays arraylist

如何使用List在我的模型中添加每个属性值?这是我做的事情

这是我的对象: 的 Item.java

public class Item {

    private String code;

    private String name;

    private Integer qty;

    // skip the getter setter
}

这是我想如何从另一个类

添加值
List<Item> sBarang = new ArrayList<Item>();
sBarang.add("");

如何添加每个属性值我的Item.java?

我能做的是这样的事情:

Item mItem = new Item();
mItem .setCode("101");
mItem .setName("Hammer");
mItem .setQty(10);

4 个答案:

答案 0 :(得分:8)

除非我遗漏了某些内容,否则您只需将mItem添加到List即可。像

Item mItem = new Item(); // <-- instantiate a new Item.
mItem.setCode("101");
mItem.setName("Hammer");
mItem.setQty(10);
sBarang.add(mItem); // <-- add it to your List<Item>.

您还可以创建一个类似

的新Item构造函数
public Item(String code, String name, Integer qty) {
    this.code = code;
    this.name = name;
    this.qty = qty;
}

然后使用单行添加

sBarang.add(new Item("101", "Hammer", 10)); 

答案 1 :(得分:2)

为方便起见,制作一个构造函数。

public class Item {
    public Item(String code, String name, int qty){
        this.code=code;
        this.name=name;
        this.qty=qty;
    }
    private String code;

    private String name;

    private Integer qty;

    //skip the getter setter
}

从那以后,你可以添加新的&#34; Item&#34;

轻松反对
sBarang.add(new Item("101","Hammer",10));

答案 2 :(得分:1)

sBarang.add("")无效。您尝试将String添加到仅包含Item个对象的列表中。

您的帖子的后半部分听起来像是在寻找一种更有效的方法来为Item实例的字段分配值。通过向您的类添加构造函数来完成此操作。这将是这样的:

public class Item {

    public Item (String startCode, String startName, int startQty) {
        this.code = startCode;
        this.name = startName;
        this.qty = startQty;
    }
    ...
}

按如下方式初始化您的项目:Item myItem = new Item("101", "Hammer", 10);

将其添加到您的列表中,如下所示:sBarang.add(myItem);

或使用单行:sBarang.add(new Item("101", "Hammer", 10));

答案 3 :(得分:0)

 Item m= new Item(); 
    m.Set_Code("101");
    m.set_Name("Hammer");
    m.set_Qty(10);
    s_barang . add(m); 
    i need to store the next value but always i get the last value in the array how to clear the current data from model class object and push the next item into m...