ArrayList в CharSequence[]



что было бы самым простым способом сделать CharSequence[] из ArrayList<String>?



конечно, я мог бы перебирать каждый ArrayList пункт и копию на CharSequence массив, но может есть лучше/быстрее?

532   2  

2 ответов:

можно использовать 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()]);

Comments

    Ничего не найдено.