如何在这里转换值:
List<String> values = new ArrayList<String>
至 :
ArrayList<Custom>
编辑:
public class Custom {
public Custom Parse(String input) {
// What should I do here?
}
}
你可以使用:
List<Custom> customList = new ArrayList<Custom>();
for (String value: values) {
customList.add(new Custom(value));
}
虽然最好只添加一个带String
参数的构造函数:
class Custom {
private final String input;
public Custom(String input) {
this.input = input;
}
// not needed but implemented for completeness
public static Custom parse(String input) {
return new Custom(input);
}
}
假设您的Custom
对象列表与values
列表大小相同。使用一个增强的 for 循环,设置对象的适当字段,如下所示:
int i=0;
for(String str:values)
customList.get(i++).setSomeProperty(str);
您可以在此线程上使用 Google Collections 库找到解决方案Converting a List<String> to a List<Integer> (或任何扩展 Number 的类)