CẤU TẠO CỦA LIST, ARRAY LIST
CƠ CHẾ HOẠT ĐỘNG CỦA LIST, ARRAY LIST
KHỞI TẠO LIST, ARRAY LIST
THÊM, XÓA PHẦN TỬ TRONG LIST, ARRAY LIST
TÌM KIẾM THÔNG TIN TRONG LIST, ARRAY LIST
DUYỆT CÁC PHẦN TỬ TRONG LIST , ARRAY LISTCÁC THAO TÁC KHÁC TRONG LIST , ARRAY LIST
ƯU ĐIỂM VÀ NHƯỢC ĐIỂM CỦA ARRAYLIST KHI SO SÁNH VỚI ARRAY
CÁC THAO TÁC KHÁC TRONG LIST , ARRAY LIST
Trang 4CẤU TẠO CỦA LIST, ARRAY LIST
Cấu tạo của List và Array List
Trang 5Kết quả:
Trang 9Người tham gia giao thông ý thức còn kém, ít hiểu biết về pháp luật, sử dụng chất ma túy, rượu bia khi tham giagiao thông, chạy xe quá tốc độ cho phép, phóng nhanh vượt ẩu là những nguyên nhân dẫn đến tai nạn giao thông.
2.4 Phương thức set:
2.3 Phương thức get
Trang 10 List cho phép thêm hoặc xóa các phần tử một cách linh hoạt mà không cần phải chỉ định kích thước của danh sách trước.
Lấy số lượng phần tử trong một danh sách Cho phép phần tử trùng lặp trong danh sách Các phần tử được truy cập thông qua chỉ số Các phần tử có thể được lặp lại và hiển thị
Trang 11 add() - thêm một phần tử vào list
addAll() - thêm tất cả các phần tử của list này vào list khác get() - giúp truy cập ngẫu nhiên các phần tử từ list
tterator() - trả về đối tượng iterator có thể được sử dụng để truy cập tuần tự các phần tử của list
set() - thay đổi các phần tử của list remove() - xóa một phần tử khỏi list
removeAll() - xóa tất cả các phần tử khỏi list
clear() - xóa tất cả các phần tử khỏi list (hiệu quả hơn removeAll()) size() - trả về độ dài của list
Một số phương thức của List
Trang 12Cơ chế hoạt động của ArrayList trong Java:
Arraylit hoạt động bằng cách sử dụng 1 mảng để lưu trữ phần tử Khởi tạo Arraylist
Trang 13• add() – thêm một phần tử vào list
• addAll() – thêm tất cả các phần tử của list này vào list khác • get() – giúp truy cập ngẫu nhiên các phần tử từ list
• iterator() – trả về đối tượng lặp có thể được sử dụng để truy cập tuần tự các phần tử của list
• set() – thay đổi các phần tử của list
• remove() – xóa một phần tử ra khỏi list
• removeAll() – xóa tất cả các phần tử ra khỏi list
• clear() – xóa tất cả các phần tử khỏi list (hiệu quả hơn removeAll()) • size() – trả về độ dài của list
• toArray() – chuyển đổi một list thành một mảng
Trang 15CÁCH 3: Sử dụng Collectión.ncopies
Cú pháp: List<Type> arrays = new
ArrayList<>(Collections.nCopies(count, “element”));Output: 5 lần “deft”
CÁCH 4: Khởi tạo từ một collection
Cú pháp: List<Type> arrays = new ArrayList<>(collection);
Trang 16publicclass ArrayListExample {
publicstaticvoid main(String[] args) {
ArrayList<Integer> arrayList = new ArrayList<Integer>();//khởi tạo một đối tượng arrayList
Scanner scanner = new Scanner(System.in);//đọc dữ liệu người dùng nhập vào
int n;
System.out.print("Nhap so phan tu muon them vao: "); n = scanner.nextInt();//nhập 1 giá trị nguyên đầu tiên vào
for (int i = 0; i < n; i++) {
System.out.print("Nhap phan tu thu " + (i + 1) + ": "); int element = scanner.nextInt();
addToArrayList(arrayList, element);//thêm giá trị vừa nhập vào arraylist
Trang 17import java.util.ArrayList;
import java.util.Scanner;
publicclass ArrayListExample {
publicstaticvoid main(String[] args) {
ArrayList<Integer> arrayList = new ArrayList<Integer>();//khởi tạo một đối tượng arrayList
Scanner scanner = new Scanner(System.in);//đọc dữ liệu người dùng nhập vào
int n;
System.out.print("Danh sach ban dau: " + arrayList); System.out.print("\nNhap gia tri can xoa: ");
int valueToRemove = scanner.nextInt();//nhập giá trị cần xóa
removeFromArrayList(arrayList, valueToRemove);//xóa phần tử vừa nhập ra khỏi arraylist
System.out.println("Danh sach sau khi xoa phan tu " + valueToRemove + ": " + arrayList); }
publicstaticvoid removeFromArrayList(ArrayList<Integer> arrayList, int value) {
Xóa phần tử
Ý tưởng:
Trang 19TÌM KIẾM THÔNG TIN TRONG LIST, ARRAY LIST
Để tìm kiếm một phần tử trong ArrayList thì chúng ta có 3 phương pháp tìm kiếm như sau:
Tìm kiếm trực tiếp phần tử.
Kết quả thu được :
Trang 21 Tìm kiếm vị trí xuất hiện cuối cùng của 1 phần tử trong List.
Kêt quả thu được :
Trang 22DUYỆT CÁC PHẦN TỬ TRONG LIST , ARRAY LISTCÁC THAO TÁC KHÁC TRONG LIST , ARRAY LIST
1.Ý tưởng
‒ Để duyệt các phần tử mà người dùng nhập từ bàn phím khỏi List và ArrayList trong Java, chúng ta có thể sử dụng các phương thức như:
forEach và biểu thức lambda iterator ().
listIterator ().
Vòng lặp for-eachVòng lặp với chỉ số
Trang 33 Boolean removeAll(Collection<?> c)
Trang 35ƯU ĐIỂM VÀ NHƯỢC ĐIỂM CỦA ARRAYLIST KHI SO SÁNH VỚI ARRAY
Kích thước của ArrayList có thể thay đổi tăng hoặc giảm tùy vào số lượng phần tử trong nó.Thêm và xóa phần tử ở bất kì vị trí nào trong mảng một cách nhanh chóng, hiệu quả.
Có nhiều phương thức hỗ trợ các thao tác như removeAll-xóa tất cả, searching-tìm kiếm, iterations-duyệt mảng, retainAll-sửa phần tử,…
Một ArrayList có thể chứa nhiều loại đối tượng như Integer, String, Scanner, hay một đối tượng do người dùng tự khai báo.
Ưu điểm
Kích thước mảng cố định và không thể thay đổi sau khi mảng được tạo.Không thể thêm phần tử sau khi mảng đã đầy.
Nhược điểm