Java - Viết chương trình tạo 1 ArrayList mới từ 1 ArrayList đã tồn tại.

Viết chương trình tạo 1 ArrayList mới từ 1 ArrayList đã tồn tại có các phần tử kiểu Integer. Các phần tử trong ArrayList mới này là duy nhất (tức là không bao gồm các phần tử có giá trị giống nhau).

Bài giải

-------------------- ######## --------------------

Hướng dẫn: Để giải bài này, chúng ta sẽ sử dụng phương thức contains() để kiểm tra phần tử có trong ArrayList đã tồn tại có xuất hiện trong ArrayList mới hay không, nếu chưa có thì thêm vào bằng cách sử dụng phương thức add(), ngược lại thì không thêm vào.

Bài giải
public static void main(String[] args) {
	int n;	// số phần tử của ArrayList
	int number;
	ArrayList<Integer> arrListInteger = new ArrayList<>();
	Scanner scanner = new Scanner(System.in);
		
	System.out.println("Nhập vào số phần tử của ArrayList: ");
	n = scanner.nextInt();
		
	for (int i = 0; i < n; i++) {
		System.out.print("Nhập phần tử thứ " + i + ": ");
		number = scanner.nextInt();
		arrListInteger.add(number);
	}
		
	// tạo 1 ArrayList mới 
	// có số phần tử bằng với số phần tử của arrListString
	ArrayList<Integer> arrNewList = new ArrayList<>(arrListInteger.size());
		
	// duyệt các phần tử trong arrListInteger
	// nếu có phần tử nào trong arrListInteger đã tồn tại trong arrNewList
	// thì không thêm vào trong arrNewList
	// ngược lại thì thêm vào bình thường
	for (int str : arrListInteger) {
		if (!arrNewList.contains(str)) {
			arrNewList.add(str);
		}
	}
		
	System.out.print("Các phần tử có trong arrListInteger là: ");
	System.out.println(arrListInteger);
	System.out.print("\nCác phần tử có trong arrNewList là: ");
	System.out.println(arrNewList);
}

Kết quả sau khi biên dịch chương trình:

Nguồn: freetuts.net