我有一个会议中心课程,每个会议中心包含1..n个会议室,每个房间有0..n个预订。
我想遍历会议中心,为每个人创建一个包含所有预订的子列表,然后将该子列表添加到具有所有会议中心的所有预订的列表中
public List<ArrayList<Reservation>> findAllReservations() {
List<ArrayList<Reservation>> allReservations = new ArrayList<>();
for (MeetingCentre mc : this.getMeetingCentres()) {
ArrayList<Reservation> currentMCReservations = new ArrayList<>();
for (MeetingRoom mr : mc.getMeetingRooms()){
if (mr.getReservations().size() > 0){
currentMCReservations.addAll(mr.getReservations());
}
}
if (currentMCReservations.size() > 0) {
allReservations.add(currentMCReservations);
}
}
return allReservations;
}
我想将此数据导出到JSON,当我尝试使用allReservations列表时,通用获取“丢失”,并且出现异常“对象无法转换为保留”
答案 0 :(得分:1)
最好的简单解决方案是使用gson。
Gson gson = new Gson();
String jsonList = gson.toJson(list_name); // converts list to json
System.out.println(jsonList);
答案 1 :(得分:1)
您需要一个ArrayList列表吗?
public String getAllReservationsJSON() {
List<Reservation> allReservations = new ArrayList<>();
for (MeetingCentre mc : this.getMeetingCentres()) {
ArrayList<Reservation> currentMCReservations = new ArrayList<>();
for (MeetingRoom mr : mc.getMeetingRooms()){
if (mr.getReservations().size() > 0){
currentMCReservations.addAll(mr.getReservations());
}
}
if (currentMCReservations.size() > 0) {
allReservations.addAll(currentMCReservations);
}
}
Gson gson = new Gson();
return gson.toJson(allReservations);
}