Преобразование массива в ArrayList в Java

В предыдущей статье мы видели, как преобразует ArrayList в массив с example. В этом уроке мы сделаем обратное: преобразуем ArrayList в array.

1) Скопируйте элементы массива в ArrayList

Этот метод состоит из перебора элементов массива и копирования их один за другим в ArrayList.

import java.util.ArrayList; 

public class ArraylistToTable {

public static void main(String[] args) {

ArrayList t = new ArrayList();
String[] classes = {"Классы здоровья" ,"архитектурные онлайн-классы",
"классы электрика"};
//Копируем значения obj в список t
< Строка> al = (ArrayList< Строка>) toArrayList(классы);
//display
for(int i=0; i < al .size(); i++)
System.out.println(al.get(i));
}

статический < Т> List< Т> toArrayList(T[] Array){
List< Т> al = новый ArrayList< Т> ();
for(T obj: Таблица)
al.add(obj);
return al;
}
}

2) Arrays.asList()

The Arrays.asList() преобразует в одну строку.

import java.util.ArrayList; 
import java.util.Arrays;
import java.util.List;

public class ArraylistToTable {

public static void main(String[] args) {

String[] card = {"visaCard" ,"MasterCard" , "AmericanExpress"};

ArrayList al = new ArrayList(Arrays.asList(card));

//Display
for(int i=0; i < al.size(); i++)
System.out.println(al.get(i));
}
}
Output:

visaCard
MasterCard
AmericanExpress
Избегайте использования типа List потому что у нас будут две проблемы:
  • Размер, возвращаемый asList(), фиксирован, если вы удаляете или добавляете элементы, вы должны сделать это в новом ArrayList(), иначе у вас будет исключение; UnsupportedOperationException.
  • Возвращаемый массив связан с исходным массивом, если вы измените исходный массив, список тоже будет изменен.
List l = Arrays.asList(card); 
//Редактировать исходный массив
card[0]="Neteller";

for(int i=0; i < l.size(); i++)
System.out.println(l.get(i));
Output

Neteller
MasterCard
AmericanExpress

3) Collections.AddAll()

Другой способ эквивалентен asList() является использованием Collections.AddAll(). Этот метод более эффективен и быстр, и мы можем сказать, что это лучший способ сделать преобразование в ArrayList.

import java.util.ArrayList; 
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class ArraylistToTable {

public static void main(String[] args) {

List al = new ArrayList();
String[] titles = {"title1, title2, title3"};

Collections.addAll(al, titles);

//Display
for(int i=0; i < al.size(); i++)
System.out.println(al.get(i));
}
}
Output:

title1
title2
title3