如何快速方便地创建一个单元素数组列表

2022-08-31 04:39:57

是否有实用程序方法可以在1行中执行此操作?我在 或 的任何地方都找不到它。CollectionsList

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

我不想重新发明轮子,除非我打算在上面放上花哨的轮辋。

井。。。类型可以是 ,而不能。但你明白了。(与所有的空检查,安全检查...等)TString


答案 1

固定尺寸List

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

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

可变大小List

如果它需要大小不同,你可以构造一个ArrayList和固定大小,如List

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

和(在Java 7 +中)您可以使用菱形运算符<>来制作它

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

单元素列表

集合可以返回具有单个元素的列表,其中列表是不可变的:

Collections.singletonList(s)

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


答案 2
Collections.singletonList(object)

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