将列表的值放入对象中

时间:2017-05-12 08:17:52

标签: java list

我有一个包含以下字段的对象PersonfirstNamesecondNameagenationallityaddressphoneNr

列表:['John', 'Smith', '35', 'american', 'San Francisco', '+0324 235 327']

我想将列表的值放入对象Person,而不使用设置每个值的经典方法。

我想避免这种情况:

person.setFirstName(list.get(0));
person.setSecondName(list.get(1));
person.setAge(list.get(2));
person.setNationallity(list.get(3));
person.setAddress(list.get(4));
person.setPhoneNumber(list.get(5));

我的对象比我在这里放置的字段更多(大约15个),我想避免编写大量代码。

所以我的问题是有一种更优雅的方式将列表中的所有值转储到对象中吗?我在想Java 8可能有什么东西,但到目前为止我还没找到任何东西。

1 个答案:

答案 0 :(得分:1)

无法将列表中的所有值转储到对象中,但您可以在Person类中添加新的构造函数,并将列表作为参数,如下所示:

public Person(List<String> list) {
    this.firstName(list.get(0));
    this.secondName(list.get(1));
    this.age(list.get(2));
    this.nationallity(list.get(3));
    this.address(list.get(4));
    this.phoneNumber(list.get(5)); 
}

,电话会是:

Person person = new Person(list);