ArrayList <String>到CharSequence
从ArrayList<String>
创buildCharSequence[]
的最简单方法是什么?
当然,我可以迭代通过每个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]
鉴于这种types的String
已经实现了CharSequence
,这种转换就像要求列表复制自己到一个新鲜的数组一样简单,这实际上不会复制任何底层的字符数据。 你只是复制对String
实例的引用:
final CharSequence[] chars = list.toArray(new CharSequence[list.size()]);