Списъците и масивите са два начина за съхраняване на данни в Java, които ще използвате доста често. В проекти, където трябва да съхранявате данни без Howвато и да е обработка на файлове, списъкът и масивите ви позволяват да съхранявате данни по време на изпълнението на вашата програма. Ще използваме Class ArrayList, който внедрява интерфейса на списък в Java взаимозаменяемо в този урок.
Разлика между списък и масив
списък |
Масив |
Размерът на списъка може да се променя |
Размерът на масива не може да се променя |
Не можете да съхранявате примитивни типове в List |
Можете да съхранявате примитивни типове в масив |
Можете да използвате Generics със списък |
Не можете да използвате Generics с Array |
Консумира повече памет |
Консумира по-малко памет |
Преобразуване на списък в масив с функция библиотека
List има метод
toArray() , който директно преобразува съдържанието на всеки списък в масив, като същевременно запазва разположението на текста в масива, Howто беше в оригиналния списък. Ето алгоритъма/стъпките за преобразуване на списък в масив в java с помощта на тази вградена библиотечна функция.
- Инициализирайте ArrayList.
- Добавете елементи към списъка чрез метода list.add(data_type) .
- Създайте масив със същия размер като списъка.
- Преобразувайте списъка в масив, като използвате името на променливата на масива, създаден в стъпка 3, като аргумент.
- Отпечатайте съдържанието на масива.
Кодът, изпълняващ тези стъпки, е даден по-долу.
import java.util.ArrayList;
public class convertListToArray {
public static void main(String[] args) {
//Converting List to Array With Library Function
//Declaration of Array List
ArrayList<String> sampleList = new ArrayList<String>();
//Adding Elements to Array List
sampleList.add("California");
sampleList.add("Texas");
sampleList.add("Illinois");
sampleList.add("Massachusetts");
sampleList.add("Florida");
sampleList.add("Virginia");
sampleList.add("Colorado");
//Printing the Array List
System.out.println("Elements of List: " + sampleList);
//Declaring Array with Equal Size to the List
String[]arr = new String [sampleList.size()];
//Converting List to Array
sampleList.toArray(arr);
//Printing the Array
System.out.print("Elements of Array: ");
for (int i = 0 ; i < arr.length ; i++){
System.out.print(arr[i] + " ");
}
}
}
Преобразуване на списък в масив без функция библиотека
Понякога може да има изискване за преобразуване на списъка в масив без използване на вградени функции. Въпросният проблем може да използва определени ограничения по отношение на библиотечните функции. Това изискване е обичайно за студенти по програмиране, които се насърчават да работят без библиотечни функции, за да им помогне да научат вътрешната работа на тези функции, преди да ги внедрят. В такива случаи можете да използвате следните стъпки, за да конвертирате списък в масив в java без ниHowва библиотечна функция.
- Инициализирайте ArrayList.
- Добавете елементи към списъка чрез метода list.add(data_type) .
- Създайте масив със същия размер като списъка.
- Създайте for цикъл, който ще премине през всеки елемент от ArrayList и ще го прехвърли към Array[index] чрез функцията list.get(index) .
- Отпечатайте съдържанието на масива, за да покажете, че всъщност конвертирате списъка в масив.
Кодът за изпълнение на тези стъпки е даден по-долу.
import java.util.ArrayList;
public class converListToArray2 {
public static void main(String[] args) {
//Converting List to Array Without Library Functions
//Declaration of Array List
ArrayList<String> sampleList = new ArrayList<String>();
//Adding Elements to Array List
sampleList.add("California");
sampleList.add("Texas");
sampleList.add("Illinois");
sampleList.add("Massachusetts");
sampleList.add("Florida");
sampleList.add("Virginia");
sampleList.add("Colorado");
//Printing the Array List
System.out.println("Elements of List: " + sampleList);
//Declaring Array with Equal Size to the List
String[]arr = new String [sampleList.size()];
//Converting to Array
for (int i = 0 ; i < arr.length ; i++){
arr[i] = sampleList.get(i);
}
//Printing the Array
System.out.print("Elements of Array: ");
for (int i = 0 ; i < arr.length ; i++){
System.out.print(arr[i] + " ");
}
}
}
По същия начин, ако също се чудите How да конвертирате масив в списък, можете да го направите, като използвате вградения метод
Array.asList() or итерирате през масива и съхранявате стойности във всеки индекс в списъка.
GO TO FULL VERSION