java - ArrayList<String> a CharSequence
(2)
¿Cuál sería la forma más fácil de hacer una CharSequence[]
fuera de ArrayList<String>
?
Claro que podría recorrer cada elemento ArrayList
y copiar a la matriz CharSequence
, pero tal vez haya una forma mejor / más rápida.
Dado que Type String
ya implementa CharSequence
, esta conversión es tan simple como pedirle a la lista que se copie a sí misma en una matriz nueva, que en realidad no copiará ninguno de los datos subyacentes del carácter. Solo está copiando referencias a instancias String
alrededor de:
final CharSequence[] chars = list.toArray(new CharSequence[list.size()]);
Puede usar List#toArray(T[])
para esto.
CharSequence[] cs = list.toArray(new CharSequence[list.size()]);
Aquí hay una pequeña demostración:
List<String> list = Arrays.asList("foo", "bar", "waa");
CharSequence[] cs = list.toArray(new CharSequence[list.size()]);
System.out.println(Arrays.toString(cs)); // [foo, bar, waa]