Nội dung
FaCode Ngôn ngữ Java Sự khác nhau giữa Array với ArrayList
Mảng (Array) là một cấu trúc dữ liệu có kích thước cố định, trong khi ArrayList là một lớp Collection có thể thay đổi được kích thước. Nghĩa là chúng ta không thể thay đổi kích thước của mảng khi đã tạo, nhưng ArrayList có thể được thay đổi.
Chúng ta không thể lưu giữ dữ liệu nguyên thủy trong ArrayList, nó chỉ có thể chứa các đối tượng. Những mảng có thể chứa cả hai kiểu dữ liệu nguyên thủy và các đối tượng trong Java. Kể từ Java 5, kiểu nguyên thủy được tự động chuyển đổi trong các đối tượng được gọi là auto-boxing.
Sự khác nhau giữa Array và ArrayList được tóm tắt lại như trong bảng sau:
Array | ArrayList |
1) Kích thước cố định. | Kích thước có thể thay đổi được. |
2) Có thể lưu trữ dữ liệu kiểu nguyên thủy và đối tượng. | Chỉ có thể lưu trữ dữ liệu kiểu đối tượng. Kể từ Java 5, kiểu nguyên thủy được tự động chuyển đổi trong các đối tượng được gọi là auto-boxing. |
3) Tốc độ lưu trữ và thao tác nhanh hơn. | Tốc độ lưu trữ vào thao tác chậm hơn. |
4) Chỉ có thuộc tính length. | Có nhiều phương thức để thao tác với dữ liệu. |
Làm sao để chuyển đổi Array thành ArrayList và ngược lại?
Dưới đây là ví dụ về việc chuyển đổi ArrayList thành Array và Array thành ArrayList:
Kết quả:
Code:
package vn.facode.collection;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Example1 {
public static void main(String[] args) {
// create arrayList
List<String> arrayList = new ArrayList<>();
// adding String object to arrayList
arrayList.add("Java");
arrayList.add("C");
arrayList.add("C++");
arrayList.add("PHP");
arrayList.add("Python");
// convert ArrayList to Array
System.out.println("Convert ArrayList to Array:");
String[] item = arrayList.toArray(new String[arrayList.size()]);
// show item
for (String s : item) {
System.out.println(s);
}
// convert Array to ArrayList
System.out.println("Convert Array to ArrayList:");
List<String> list2 = new ArrayList<>();
list2 = Arrays.asList(item);
// show list2
System.out.println(list2);
}
}
____________________________________
_____________________
7 Java frameworks phổ biến nhất hiện nay
________
FaCode là một seri học tập lập trình, lần này là FaCode ngôn ngữ Java, bằng mọi nỗ lực FaCode sẽ hoàn thành các mục tiêu đề ra trong FaCode Ngôn ngữ Java. Hãy đồng hành cùng FaCode Ngôn ngữ Java và theo dõi chúng tôi nhé. FaCode Ngôn ngữ Java rất mong nhận được lời góp ý từ phía cộng đồng. Share4Happy với phương châm chia sẻ để hạnh phúc.