什么是最简单的CharSequence[]
方法ArrayList<String>
?
当然我可以遍历每个ArrayList
项目并复制到CharSequence
数组,但也许有更好/更快的方法?
什么是最简单的CharSequence[]
方法ArrayList<String>
?
当然我可以遍历每个ArrayList
项目并复制到CharSequence
数组,但也许有更好/更快的方法?
你可以用List#toArray(T[])
这个。
CharSequence[] cs = list.toArray(new CharSequence[list.size()]);
这是一个小演示:
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]
鉴于该类型String
已经实现CharSequence
,这种转换就像要求列表将自身复制到一个新数组中一样简单,该数组实际上不会复制任何底层字符数据。您只是在复制对String
周围实例的引用:
final CharSequence[] chars = list.toArray(new CharSequence[list.size()]);