java.lang.ClassCastException:java.lang.Double不能强制转换为[Ljava.lang.Object; Iterator itr=list.Iterator(); while(itr.hasNext()){ Object[]obj=(Object[])itr.next();--------------------------//第1行 JSONObject jo=新的JSONObject(); jo.put(“routeNo”,(int)obj[6]); jo.put(“routeName”,obj[5].toString()); jo.put(“stopSequenceID”,(int)obj[4]); jo.put(“stopID”,(int)obj[3]); jo.put(“stopName”,obj[2].toString()); jo.put(“横向”(双)对象[1]); jo.put(“lon”,(double)obj[0]); } java.lang.ClassCastException:java.lang.Double无法转换为第(1)行的[Ljava.lang.Object;-------------------

java.lang.ClassCastException:java.lang.Double不能强制转换为[Ljava.lang.Object; Iterator itr=list.Iterator(); while(itr.hasNext()){ Object[]obj=(Object[])itr.next();--------------------------//第1行 JSONObject jo=新的JSONObject(); jo.put(“routeNo”,(int)obj[6]); jo.put(“routeName”,obj[5].toString()); jo.put(“stopSequenceID”,(int)obj[4]); jo.put(“stopID”,(int)obj[3]); jo.put(“stopName”,obj[2].toString()); jo.put(“横向”(双)对象[1]); jo.put(“lon”,(double)obj[0]); } java.lang.ClassCastException:java.lang.Double无法转换为第(1)行的[Ljava.lang.Object;-------------------,java,collections,classcastexception,Java,Collections,Classcastexception,我正在将列表转换为对象[] “列表”对象包含750条记录。 对于字段,我将其放在'jo'对象上。每条记录包含这7个字段 请帮帮我。 提前感谢在您的案例中返回一个对象。为什么要将其强制转换为对象[] 你可能想做这样的事: Iterator<Object> itr=list.iterator(); while(itr.hasNext()){ Object []obj=(Object[]) itr.next();------------------//line1 JSONObject jo

我正在将列表转换为对象[]

“列表”对象包含750条记录。 对于字段,我将其放在'jo'对象上。每条记录包含这7个字段

请帮帮我。 提前感谢

在您的案例中返回一个
对象
。为什么要将其强制转换为
对象[]

你可能想做这样的事:

Iterator<Object> itr=list.iterator();
while(itr.hasNext()){
Object []obj=(Object[]) itr.next();------------------//line1
JSONObject jo = new JSONObject();
                jo.put("routeNo", (int)obj[6]);
                jo.put("routeName", obj[5].toString());
                jo.put("stopSequenceID", (int)obj[4]);
                jo.put("stopID", (int)obj[3]);
                jo.put("stopName",obj[2].toString());
                jo.put("lat", (double)obj[1]);
                jo.put("lon", (double)obj[0]);
}
java.lang.ClassCastException: java.lang.Double cannot be cast to [Ljava.lang.Object;---------------------at line(1)
Iterator itr=list.Iterator();
ArrayList items=新建ArrayList();
while(itr.hasNext()){
items.add(itr.next());
}

请注意,定义
JSONObject jo
不应在
循环中。

您可以使用
toArray将
列表
转换为
对象[]

Iterator<Double> itr=list.iterator();
ArrayList<Double> items = new ArrayList<>();
   while(itr.hasNext()) {
       items.add(itr.next());
   }
List List=new ArrayList();
列表。添加(10.0);
列表。添加(10.0);
列表。添加(10.0);
Object[]obj=list.toArray();

无法完成。
对象
不是
对象[]
。也许如果你解释一下你需要用它做什么,那么我们可以帮你做得更好一点?而且,为什么你有一个
对象的集合
放在第一位有点奇怪……你能详细说明一下这个集合应该包含什么吗?你的列表中有一个
,仅此而已。你正在尝试正如错误消息所说,将一个双精度对象转换为一个对象数组。为什么将一个双精度对象转换为一个对象数组?我的要求是,在迭代列表时,应该为该键值设置这些索引位置。
  List<Double> list=new ArrayList<>();
  list.add(10.0);
  list.add(10.0);
  list.add(10.0);

 Object[] obj=list.toArray();