在我当前的项目中,我想将List<String>
转换为RegionLabel
对象。
例如,用户按顺序逐个输入字符串值 - center
,floor
,room
。我将用户的输入存储到List中。
现在,RegionLabel( String centerString, String floorString, String roomString);
我的要求是将List<String>
数据结构转换为RegionLabel("center", floor", "room" );
数据结构。
一个注意事项: 我的RegionLabel类是在运行时生成的。在运行时意味着在设计时,我不知道“RegionLabel构造函数有多少个参数?”
-Pankesh
答案 0 :(得分:2)
也许你刚刚完成
new RegionLabel(list.get(0), list.get(1), list.get(2))
我不知道“RegionLabel构造函数有多少个参数?”
然后你必须使用反射,或者提供一个接受List<String>
作为参数的构造函数。
答案 1 :(得分:1)
创建一个像RegionLabel(List<String> list)
这样的新构造函数。这应该做。
public RegionLabel(List<String> list) throws Exception{
if( null == list || list.size() < 3 )
throw new Exception("illegal parameter");
this.centre = list.get(0);
...
}
答案 2 :(得分:0)
RegionLabel label = new RegionLabel(inputList.get(0), inputList.get(1), inputList.get(2));
简化而没有任何错误处理或验证,但对“转换”没有任何限制,很难更通用。