Java:添加到列表列表中
考虑以下声明Java:添加到列表列表中,java,list,Java,List,考虑以下声明 列表组 我可以通过说groups.add(newperson(John)),来添加到这个列表中 有什么方法可以添加到内部列表而不是外部列表中吗?事实上,您不能添加组 你可以做: ArrayList<Person> t = new ArrayList<Person>(); t.add(new Person()); groups.add(t) ArrayList t=new ArrayList(); t、 添加(新人员()); 组。添加(t) 实际上你不能做分
列表组代码>
我可以通过说groups.add(newperson(John)),来添加到这个列表中代码>
有什么方法可以添加到内部列表而不是外部列表中吗?事实上,您不能添加组代码>
你可以做:
ArrayList<Person> t = new ArrayList<Person>();
t.add(new Person());
groups.add(t)
ArrayList t=new ArrayList();
t、 添加(新人员());
组。添加(t)
实际上你不能做分组。添加(新人(约翰))代码>
你可以做:
ArrayList<Person> t = new ArrayList<Person>();
t.add(new Person());
groups.add(t)
ArrayList t=new ArrayList();
t、 添加(新人员());
组。添加(t)
列表组
基本上是说列表中的每个项目都是人的列表
这意味着,为了向列表中添加人员
,您需要首先为要添加的元素创建列表
List<Person> person = //...
groups.add(person);
例如
Map<String, List<Person>> groups = new HashMap<>();
List<Person> persons = groups.get("family");
if (persons == null) {
persons = new ArrayList<>(25);
groups.put("family", persons);
}
persons.add(aPerson);
根据评论更新
Map
可能是对类似项进行“分组”的更好解决方案,例如
Map<String, List<Person>> groups = new HashMap<>();
List<Person> persons = groups.get("family");
if (persons == null) {
persons = new ArrayList<>(25);
groups.put("family", persons);
}
persons.add(aPerson);
Map groups=newhashmap();
列出人员=组。获取(“家庭”);
if(persons==null){
人员=新阵列列表(25);
组。put(“家庭”,个人);
}
人。加(人);
这是一个非常基本的示例,但有助于您入门……浏览列表组也可能会有所帮助
基本上是说列表中的每个项目都是人的列表
这意味着,为了向列表中添加人员
,您需要首先为要添加的元素创建列表
List<Person> person = //...
groups.add(person);
例如
Map<String, List<Person>> groups = new HashMap<>();
List<Person> persons = groups.get("family");
if (persons == null) {
persons = new ArrayList<>(25);
groups.put("family", persons);
}
persons.add(aPerson);
根据评论更新
Map
可能是对类似项进行“分组”的更好解决方案,例如
Map<String, List<Person>> groups = new HashMap<>();
List<Person> persons = groups.get("family");
if (persons == null) {
persons = new ArrayList<>(25);
groups.put("family", persons);
}
persons.add(aPerson);
Map groups=newhashmap();
列出人员=组。获取(“家庭”);
if(persons==null){
人员=新阵列列表(25);
组。put(“家庭”,个人);
}
人。加(人);
这是一个非常基本的示例,但有助于您入门…浏览列表组也可能对列表组有所帮助代码>您不能进行分组。添加(新人(约翰))代码>因为组
是一个列表
而不是列表
您需要的是获取并添加:
List<List<Person>> groups;
//add to group-1
groups = new ArrayList<List<Person>>();
//add a person to group-1
groups.get(0).add(new Person());
//Or alternatively manage groups as Map so IMHO group fetching would be more explicit
Map<String, List<Person>> groups;
//create new group => students,
groups = new HashMap<String, List<Person>>();//can always use numbers though
groups.put("students", new ArrayList<Person>());
//add to students group
groups.get("students").add(new Person());
列表组;
//添加到第1组
groups=newarraylist();
//将一个人添加到第1组
groups.get(0).add(newperson());
//或者作为映射管理组,这样IMHO组获取将更加明确
地图组;
//创建新组=>学生,
groups=newhashmap()//不过我可以用数字
组。放置(“学生”,新ArrayList());
//添加到学生组
groups.get(“学生”).add(newperson());
与列表组代码>您不能进行分组。添加(新人(约翰))代码>因为组
是一个列表
而不是列表
您需要的是获取并添加:
List<List<Person>> groups;
//add to group-1
groups = new ArrayList<List<Person>>();
//add a person to group-1
groups.get(0).add(new Person());
//Or alternatively manage groups as Map so IMHO group fetching would be more explicit
Map<String, List<Person>> groups;
//create new group => students,
groups = new HashMap<String, List<Person>>();//can always use numbers though
groups.put("students", new ArrayList<Person>());
//add to students group
groups.get("students").add(new Person());
列表组;
//添加到第1组
groups=newarraylist();
//将一个人添加到第1组
groups.get(0).add(newperson());
//或者作为映射管理组,这样IMHO组获取将更加明确
地图组;
//创建新组=>学生,
groups=newhashmap()//不过我可以用数字
组。放置(“学生”,新ArrayList());
//添加到学生组
groups.get(“学生”).add(newperson());
您可以定义一个通用的双列表类来完成这项工作。显然,如果您有某些业务逻辑,可以帮助您在内部确定要添加到哪个列表(而不提供索引),那么您可以扩展此功能
import java.util.*;
公共类双重名单
{
私人名单;
公开双重名单()
{
列表=新的ArrayList();
}
public int getOuterCount()
{
返回list.size();
}
公共整数getInnerCount(整数索引)
{
如果(索引 while(list.size()您可以定义一个通用的double list类来为您执行此操作。显然,如果您有某些业务逻辑可以帮助您在内部确定要添加到哪个列表(而不提供索引),则可以扩展此类
import java.util.*;
公共类双重名单
{
私人名单;
公开双重名单()
{
列表=新的ArrayList();
}
public int getOuterCount()
{
返回list.size();
}
公共整数getInnerCount(整数索引)
{
如果(索引 while(list.size()创建一个列表
,向其中添加一个人,将其添加到另一个列表
。我可以不创建另一个列表而执行此操作吗?我只想能够说组。
等,然后添加一个新的人员列表或向现有人员列表添加更多人员。您有一个列表
的列表
。您需要创建一个n新建List
并执行groups.add(newlist)
。然后可以直接添加到newlist.add(new Person())
,或者通过从外部列表中获取引用作为groups.get(0).add(new Person())
@PMadd
方法返回一个boolean
。您可以创建一个匿名的内部类来添加元素。对于一行的groups.add((new ArrayList(){{add(new Person(“John”);}}));
但是这是一个非常糟糕的主意。请尝试groups.add(new ArrayList(Arrays.asList(new Person(“John”));
创建一个列表
,向其中添加一个人,然后将其添加到另一个列表
。我可以不创建另一个列表而执行此操作吗?我只想能够