我有一个List listObject,我想为listObject的每个对象存储一个List pointListForObject。 我怎样才能使它发挥作用?
class Points {
private int start;
private int stop;
public Points() {
start = 0;
stop = 0;
}
setter and getter...
}
List<Object[]> listObject = new ArrayList<Object[]>;
List<Points> pointListForObject = new ArrayList<Points>;
...
Points point= new Point();
point.setStart(1);
point.setStop(2);
pointListForObject.add(point);
listObject.get(0)[1] = pointListForObject;
现在我想在另一种方法中获得积分,但我不知道如何以正确的方式进行转换或转换。 我的想法是:
List<Points> usePointsOfObject = (List<Points>) listObject.get(0)[1];
在这里,我得到一个:
线程"main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to java.util.List
我尝试了不同的可能性(投射或转换)我知道但它不起作用 我没有想法..
答案 0 :(得分:0)
在
pointListForObject.add(点);
你应该有 Object [] objArr = list.toArray(new Object [pointListForObject.size()]);然后 listObject.add(objArr);
答案 1 :(得分:0)
现在我解决了我的问题
std::unique_ptr<SpecialReader> myReader;
myReader = SpecialReader::Create(filename);
if(!myReader.get()) {
// Error handling, Create() couldn't create an instance of SpecialReader
}
将列表存储在数组对象中
class Points {
private int start;
private int stop;
public Points() {
start = 0;
stop = 0;
}
setter and getter...
}
List<Object[]> listObject = new ArrayList<Object[]>;
List<Points> pointListForObject = new ArrayList<Points>;
...
Points point= new Point();
point.setStart(1);
point.setStop(2);
从数组对象恢复列表并将其用作列表
pointListForObject.add(point);
Object ob = pointListForObject;
listObject.get(0)[1] = ob;
感谢您帮助和分享您的知识和时间!