將CharSequence[]
作爲ArrayList<String>
的最簡單方法是什麼?ArrayList <String> to CharSequence []
當然,我可以遍歷每個ArrayList
項目和複製到CharSequence
數組,但也許有更好/更快的方式?
將CharSequence[]
作爲ArrayList<String>
的最簡單方法是什麼?ArrayList <String> to CharSequence []
當然,我可以遍歷每個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()]);
+1 - 重點是'CharSequence'是一個接口,'String'實現它。 – 2010-06-13 13:26:28