import java.util.List;
public class PersonTest {
private String name;
private Game game;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Game getGame() {
return game;
}
public void setGame(Game game) {
this.game = game;
}
}
public class Game {
private String[] string;
public String[] getString() {
return string;
}
public void setString(String[] string) {
this.string = string;
}
}
public class MTest {
public static void main(String[] arg) throws IOException{
String json = "[{\"name\":\"Jack\",\"game\":{\"string\":[\"2\",\"3\"]}},{\"name\":\"Jack\",\"game\":{\"string\":[\"2\",\"3\"]}}]";
JSONArray jsonobject = JSONArray.fromObject(json);
List<PersonTest> list1 = (List<PersonTest>)JSONArray.toArray(jsonobject,PersonTest.class);
for(PersonTest u : list1){
System.out.println(u.getName());
}
}
}
为什么转换不了...报错了,哪里写的有错吗?
Exception in thread "main" java.lang.ClassCastException: [Lm.test.PersonTest; cannot be cast to java.util.List
at m.test.MTest.main(MTest.java:21)
ArrayList<PersonTest> list1 = (ArrayList<PersonTest>)JSONArray.toList(jsonobject,new PersonTest(),new JsonConfig()); 试试,不知道你用的是哪个jar的json,上面代码用的net.sf.json.JSONArray