How to quickly and conveniently create a one element arraylist
arraylist, collections, java
Solution
Fixed size `List`
The easiest way, that I know of, is to create a fixed-size single element `List` with `Arrays.asList(T...)` like
// Returns a List backed by a varargs T.
return Arrays.asList(s);
Variable size `List`
If it needs vary in size you can construct an `ArrayList` and the fixed-size`List` like
return new ArrayList<String>(Arrays.asList(s));
and (in Java 7+) you can use the diamond operator `<>` to make it
return new ArrayList<>(Arrays.asList(s));
Single Element List
Collections can return a list with a single element with list being immutable:
Collections.singletonList(s)
The benefit here is IDEs code analysis doesn't warn about single element asList(..) calls.
Problem
Is there a Utility method somewhere that can do this in 1 line? I can't find it anywhere in `Collections`, or `List`. ``` public List<String> stringToOneElementList(String s) { List<String> list = new ArrayList<String>(); list.add(s); return list; } ``` I don't want to re-invent the wheel unless I plan on putting fancy rims on it. Well... the type can be `T`, and not `String`. but you get the point. (with all the null checking, safety checks...etc)