Java-不添加到对象的ArrayList
我的代码没有向Java-不添加到对象的ArrayList,java,arraylist,Java,Arraylist,我的代码没有向对象[]的数组列表添加新索引 我的代码: System.out.println("started1"); ArrayList<Object[]> toSend = new ArrayList<Object[]>(); System.out.println("started2"); for(Entry<String, Room> map : rooms.
对象[]
的数组列表添加新索引
我的代码:
System.out.println("started1");
ArrayList<Object[]> toSend = new ArrayList<Object[]>();
System.out.println("started2");
for(Entry<String, Room> map : rooms.entrySet())
{
System.out.println("started3");
String key = map.getKey();
Room val = map.getValue();
System.out.println("started3.1");
Player owner = players.get(val.getOwnerID());
System.out.println("started3.125");
Object[] toAdd = new Object[] {key, val.getRoomName(), val.getCurrentPlayerSize(), val.getMaxPlayers(), owner.getName()};
System.out.println("started3.15");
toSend.add(toAdd);
System.out.println("started3.2");
}
System.out.println("started4");
client.sendEvent("refreshAvailableRooms", toSend);
System.out.println("started5");
EDIT2:可运行代码
Room.java:
public class Room {
public String RoomName = "Room Name";
public int size = 3;
public int max = 10;
public String ownerID = "BobSmith";
public String ID = "Room1";
public Room() { }
}
Player.java:
public class Player {
public String ID = "BobSmith";
public String Name = "Bob";
public Player() { }
}
Main.java:
public class main {
private static HashMap<String, Player> players = new HashMap<String, Player>();
private static HashMap<String, Room> rooms = new HashMap<String, Room>();
public static void main(String args[]) {
players.put("BobSmith", new Player());
rooms.put("Room1", new Room());
rooms.put("Room2", new Room());
rooms.put("Room3", new Room());
System.out.println("started1");
ArrayList<Object[]> toSend = new ArrayList<Object[]>();
System.out.println("started2");
for(Entry<String, Room> map : rooms.entrySet())
{
System.out.println("started3");
String key = map.getKey();
Room val = map.getValue();
System.out.println("started3.1");
Player owner = players.get(val.ownerID);
System.out.println("started3.125");
Object[] toAdd = new Object[] {key, val.RoomName, val.size, val.max, owner.Name};
System.out.println("started3.15");
toSend.add(toAdd);
System.out.println("started3.2");
}
System.out.println("started4");
}
}
Room.java:
公共教室{
公共字符串RoomName=“房间名称”;
公共int size=3;
公共int max=10;
公共字符串ownerID=“BobSmith”;
公共字符串ID=“Room1”;
公共房间(){}
}
Player.java:
公开课选手{
公共字符串ID=“BobSmith”;
公共字符串Name=“Bob”;
公共播放器(){}
}
Main.java:
公共班机{
私有静态HashMap players=newhashmap();
private static HashMap rooms=new HashMap();
公共静态void main(字符串参数[]){
players.put(“BobSmith”,新玩家());
房间。放置(“房间1”,新房间());
房间。放置(“房间2”,新房间());
房间。放置(“房间3”,新房间());
System.out.println(“started1”);
ArrayList toSend=新的ArrayList();
System.out.println(“started2”);
for(入口映射:rooms.entrySet())
{
System.out.println(“started3”);
String key=map.getKey();
Room val=map.getValue();
System.out.println(“started3.1”);
玩家所有者=玩家.get(val.ownerID);
System.out.println(“started3.125”);
Object[]toAdd=新对象[]{key,val.RoomName,val.size,val.max,owner.Name};
System.out.println(“started3.15”);
toSend.add(toAdd);
System.out.println(“started3.2”);
}
System.out.println(“started4”);
}
}
请考虑提供一个演示您的问题的示例。这不是一个代码转储,而是您正在做的一个示例,它突出了您所遇到的问题。这将减少混乱和更好的响应停止时是否打印错误?isSystem.out.println(started3.125“);
复制粘贴错误或编译错误?@Danny它不打印任何错误。程序的其余部分继续工作,但是在这个特定的函数中,它在该点停止,并且不执行下面的任何操作。@zuc001,您是否尝试过逐行调试代码?以及您在下面的意思“它在该点停止,并且在其下方不执行任何其他操作”?是否抛出错误,但您在调用堆栈的上方添加了try{}catch(e){}
,但有异常?
Room.java:
public class Room {
public String RoomName = "Room Name";
public int size = 3;
public int max = 10;
public String ownerID = "BobSmith";
public String ID = "Room1";
public Room() { }
}
Player.java:
public class Player {
public String ID = "BobSmith";
public String Name = "Bob";
public Player() { }
}
Main.java:
public class main {
private static HashMap<String, Player> players = new HashMap<String, Player>();
private static HashMap<String, Room> rooms = new HashMap<String, Room>();
public static void main(String args[]) {
players.put("BobSmith", new Player());
rooms.put("Room1", new Room());
rooms.put("Room2", new Room());
rooms.put("Room3", new Room());
System.out.println("started1");
ArrayList<Object[]> toSend = new ArrayList<Object[]>();
System.out.println("started2");
for(Entry<String, Room> map : rooms.entrySet())
{
System.out.println("started3");
String key = map.getKey();
Room val = map.getValue();
System.out.println("started3.1");
Player owner = players.get(val.ownerID);
System.out.println("started3.125");
Object[] toAdd = new Object[] {key, val.RoomName, val.size, val.max, owner.Name};
System.out.println("started3.15");
toSend.add(toAdd);
System.out.println("started3.2");
}
System.out.println("started4");
}
}