如何快速方便地创建一个单元素ArrayList

41 浏览
0 Comments

如何快速方便地创建一个单元素ArrayList

这个问题已经有了答案:

如何在一行中初始化ArrayList

是否有一个实用方法可以在一行中完成这个任务?我在CollectionsList中找不到它。

public List stringToOneElementList(String s) {
    List list = new ArrayList();
    list.add(s);
    return list;
}

我不想重复造轮子,除非我打算在上面安装花哨的轮辋。

嗯...类型可以是T,而不是String。但你明白我的意思。(包括所有的空值检查、安全检查等)

admin 更改状态以发布 2023年5月24日
0
0 Comments

Collections.singletonList(object)

这个方法创建的列表是不可变的。

0
0 Comments

固定大小的List

我所知道的最简单的方法是,使用Arrays.asList(T...)创建一个固定大小的单元素List,例如:

// Returns a List backed by a varargs T.
return Arrays.asList(s);

可变大小的List

如果它需要可变大小,您可以构造一个ArrayList和固定大小的List,例如:

return new ArrayList(Arrays.asList(s));

在Java 7及以上版本中,您可以使用钻石操作符<>简化代码

return new ArrayList<>(Arrays.asList(s));

单元素列表

Collections可以返回一个包含单个元素且不可变的列表:

Collections.singletonList(s)

这样做的好处是IDE的代码分析不会警告单个元素的asList(...)调用。

0