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

🔥 🚀 Важно для всех, кто работает с Java! 🔥
На JavaRocks ты найдешь уникальные туториалы, практические задачи и редкие книги, которых не найти в свободном доступе. Присоединяйся к нашему Telegram-каналу JavaRocks — стань частью профессионального сообщества!

Списки и массивы – это два способа хранения данных в Java, которые вы будете использовать довольно часто. В проектах, где вам нужно хранить данные без обработки файлов, списки и массивы позволяют хранить данные на протяжении всего выполнения программы.

В этом руководстве мы будем использовать класс ArrayList, реализующий интерфейс List

Разница между списком и массивом

СписокМассив
Размер списка может быть измененРазмер массива не может быть изменен
Вы не можете хранить примитивные типы в спискеМожно хранить примитивные типы
Вы можете использовать дженерики со спискомВы не можете использовать дженерики
Потребляет больше памятиПотребляет меньше памяти

Преобразование списка в массив с помощью библиотечной функции

У List есть метод toArray(), который напрямую преобразует содержимое любого списка в массив, сохраняя при этом расположение текста в массиве таким, каким оно было в исходном списке. Вот алгоритм/шаги преобразования списка в массив в java с помощью этой встроенной функции.

  • Инициализируйте ArrayList.
  • Добавьте элементы в список с помощью метода list.add(data_type).
  • Создайте массив того же размера, что и список.
  • Преобразуйте список в массив, используя в качестве аргумента имя переменной массива, созданного в шаге 3.
  • Выведите содержимое массива.

Код, реализующий эти шаги, приведен ниже.

import java.util.ArrayList;
public class convertListToArray {

    public static void main(String[] args) {

        

        
        ArrayList<String> sampleList = new ArrayList<String>();

        
        sampleList.add("California");
        sampleList.add("Texas");
        sampleList.add("Illinois");
        sampleList.add("Massachusetts");
        sampleList.add("Florida");
        sampleList.add("Virginia");
        sampleList.add("Colorado");


        
        System.out.println("Elements of List: " + sampleList);

        
        String[]arr = new String [sampleList.size()];

        
        sampleList.toArray(arr);

        
        System.out.print("Elements of Array: ");
        for (int i = 0 ; i < arr.length ; i++){
            System.out.print(arr[i] + "  ");
        }
    }
}
Run Code

Преобразование списка в массив без использования встроенных функций

Иногда может возникнуть необходимость преобразовать список в массив без использования встроенных функций. В задаче могут использоваться определенные ограничения на библиотечные функции. Такое требование характерно для студентов-программистов, которым предлагается работать без них, чтобы помочь изучить внутреннюю работу этих функций. В таких случаях вы можете использовать следующие шаги для преобразования списка в массив.

  1. Инициализируйте список ArrayList.
  2. Добавьте элементы в список с помощью метода list.add(data_type).
  3. Создайте массив того же размера, что и список.
  4. Создайте цикл for, который будет перебирать каждый элемент ArrayList и передавать его в Array[index] с помощью функции list.get(index).
  5. Выведите содержимое массива

Код для реализации этих шагов приведен ниже.

import java.util.ArrayList;
public class converListToArray2 {

    public static void main(String[] args) {
        

        
        ArrayList<String> sampleList = new ArrayList<String>();

        
        sampleList.add("California");
        sampleList.add("Texas");
        sampleList.add("Illinois");
        sampleList.add("Massachusetts");
        sampleList.add("Florida");
        sampleList.add("Virginia");
        sampleList.add("Colorado");


        
        System.out.println("Elements of List: " + sampleList);

        
        String[]arr = new String [sampleList.size()];

        
        for (int i = 0 ; i < arr.length ; i++){
            arr[i] = sampleList.get(i);
        }

        
        System.out.print("Elements of Array: ");
        for (int i = 0 ; i < arr.length ; i++){
            System.out.print(arr[i] + "  ");
        }
    }
}
Run Code

Аналогично, если вы задаетесь вопросом, как преобразовать массив в список, вы можете сделать это с помощью встроенного метода Array.asList() или итерацией по массиву с сохранением значений по каждому индексу в списке.

Перевод статьи «Convert List to Array in Java».

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Прокрутить вверх