大小未知的多维数组
我需要创建一个具有未定义大小的数组,该数组将包含用户信息。
例如:
user[0]["name"] = "Patrick";
但是,标准的java数组似乎需要一个已知的长度,我不知道。
我可以使用哪种替代方案? (我很乐意看到一些编码示例)我正在使用TCP框架( kryonet ),它不允许使用构造函数传递对象。 因此,据我所知,制作用户对象是不可能的。
在java中,我们只能对单元格索引使用整数值。
我想你正在寻找地图列表:
List
要访问所有名称,例如:
for (Map person:persons) { System.out.println(person.get("name")); }
首先你应该使用Objects而不是任意数据结构,如果你不知道大小,我会使用List
List people = new ArrayList (); people.add(new Person("Patrick"));
你不能在java中使用关联数组。 换句话说,您不能使用“名称”作为键。
但您可以通过执行以下操作创建空数组而不指定大小:
String[] array = new String[]{};
但是,尝试将某些内容放入此数组中将为您提供indexoutofboundexception
您应该考虑创建一个类(如Person)并仅使用List来管理它。 你可以这样做:
List myLyst = new ArrayList(); Person person = new Person("Patrick"); myList.add(0, person);