Just construct a new ArrayList
wrapping the keyset of the request parameter map.
List<String> parameterNames = new ArrayList<String>(request.getParameterMap().keySet());
// ...
I only wonder how it’s useful to have it as List<String>
. A Set<String>
would make much more sense as parameter names are supposed to be unique (a List
can contain duplicate elements). A Set<String>
is also exactly what the map’s keyset already represents.
Set<String> parameterNames = request.getParameterMap().keySet();
// ...
Or perhaps you don’t need it at all for the particular functional requirement for which you thought that massaging the parameter names into a List<String>
would be the solution. Perhaps you actually intented to iterate over it in an enhanced loop, for example? That’s also perfectly possible on a Map
.
for (Entry<String, String[]> entry : request.getParameterMap().entrySet()) {
String name = entry.getKey();
String value = entry.getValue()[0];
// ...
}