Professional Documents
Culture Documents
Cautrucdulieu
Cautrucdulieu
GIẢI THUẬT
NHÓM 5
slidesmania.com
“
▹ TÀI LIỆU NGHIÊN CỨU :
▹ LIST , ARRAY LIST
slidesmania.com
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
:
slidesmania.com
2.3 Phương thức get
LIST
List interface được triển khai bởi nhiều lớp trong Java như ArrayList , LinkedList, Vector
và Stack
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ị
slidesmania.com
Output:{1,2,3,4}
slidesmania.com
CÁCH 3: Sử dụng Collectión.ncopies
Output là 1,2,3
THÊM, XÓA PHẦN TỬ TRONG LIST, ARRAY LIST
Thêm phần tử
Ý tưởng:
import java.util.ArrayList;
import java.util.Scanner;
public class ArrayListExample {
public static void 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();
slidesmania.com
Để 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ử.
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-each
Vòng lặp với chỉ số
slidesmania.com
2. Ví dụ minh họa:
Khai báo vào đưa giá trị vào ArrayList:
:
slidesmania.com
Phương pháp forEach và biểu thức lambda:
Kết
quả:
slidesmania.com
Phương pháp iterator ():
Kết quả:
slidesmania.com
Phương pháp listIterator ():
Kết quả:
slidesmania.com
Phương pháp vòng lặp for-each:
Kết quả:
slidesmania.com
Phương pháp vòng lặp với chỉ số:
Kết quả:
slidesmania.com
CÁC THAO TÁC KHÁC TRONG LIST , ARRAY LIST
Kết
quả :
slidesmania.com
Boolean addAll(int index , Collection<? extends E> c)
:
slidesmania.com
Kết
quả :
2. Một số hàm xóa
E remove(int index)
:
Kết quả:
slidesmania.com
Boolean removeAll(Collection<?> c)
:
slidesmania.com
Kết quả:
Void clear()
Kết quả:
slidesmania.com
ƯU ĐIỂM VÀ NHƯỢC ĐIỂM CỦA ARRAYLIST
KHI SO SÁNH VỚI ARRAY
Ưu điểm
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.
Nhược đ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.
slidesmania.com
Việc thêm và xóa phần tử giữa mảng gây nhiều khó khăn.
slidesmania.com