Java - Bài tập tương tác với 2 List
Viết chương trình thực hiện các yêu cầu sau:
- Khai báo 2 mảng
colorsvàcolors2và thêm các phần tử cho 2 mảng đó. - Tạo mới 2
Listlistvàlist2có các phần tử là phần tử của 2 mảng vừa khai báo. - Thêm các phần tử có trong
list2vào tronglist, sau đó đưalist2trở về 1 danh sách rỗng (không có phần tử nào) và hiển thịlist. - Chuyển các phần tử có trong list thành ký tự in hoa và hiển thị lại
listđó. - Xóa các phần tử trong
listtừ phần tử thứ 4 đến phần tử thứ 6. Hiển thị lạilistsau khi xóa. - Đảo ngược
listvà hiển thị lạilistsau khi đảo ngược.
Bài giải
-------------------- ######## --------------------
Để giải bài tập này, chúng ta sẽ sử dụng các phương thức như sau:

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.
addAll(): Thêm các phần tử củalistnày vào trong 1listkhác.set(Element e): Thay thế các phần tử tronglistbằng phần tử esubList(int fromIndex, int toIndex): trả về 1listđược tách từ phần tử thứfromIndexđến phần tử đững trước phần tử thứtoIndextrong 1listđã tồn tại.previous(): Hiển thị các phần tử tronglisttheo thứ tự từ phần tử đầu đến phần tử cuối.
Bài giải
public static void main(String[] args) {
String colors[] = {"black", "yellow", "green", "blue", "violet", "silver"};
String colors2[] = {"gold", "white", "brown", "blue", "gray", "silver"};
// khai báo 2 List có Class triển khai là LinkedList
List<String> list = new LinkedList<>();
List<String> list2 = new LinkedList<>();
// thêm các phần tử có trong 2 mảng
// vào trong list và list2
for (int count = 0; count < colors.length; count++) {
list.add(colors[count]);
list2.add(colors2[count]);
}
// thêm các phần tử của list2 vào trong list
// và list2 trở về null (không có phần tử nào)
list.addAll(list2);
list2 = null;
// hiển thị các phần tử có trong list
System.out.println("Các phần tử có trong list: ");
for (int count = 0; count < list.size(); count++) {
System.out.print(list.get(count) + "\t");
}
// chuyển các phần tử trong list thành chữ hoa
ListIterator<String> listIterator = list.listIterator();
while (listIterator.hasNext()) {
String str = listIterator.next();
listIterator.set(str.toUpperCase());
}
System.out.println("\nCác phần tử có trong list sau khi chuyển đổi: ");
for (int count = 0; count < list.size(); count++) {
System.out.print(list.get(count) + "\t");
}
// xóa phần tử trong phạm vi 4 đến 6 trong list
// sử dụng phương thức clear()
list.subList(4, 7).clear();
System.out.println("\nCác phần tử có trong list sau khi xóa: ");
for (int count = 0; count < list.size(); count++) {
System.out.print(list.get(count) + "\t");
}
// đảo list sử dụng ListIterator
// listIterator này sẽ trỏ tới phần tử cuối cùng trong list
listIterator = list.listIterator(list.size());
System.out.println("\nlist sau khi đảo ngược: ");
while (listIterator.hasPrevious()) {
System.out.print(listIterator.previous() + "\t");
}
}
Kết quả sau khi biên dịch chương trình:
Câu hỏi thường gặp liên quan:

Các kiểu dữ liệu trong C ( int - float - double - char ...)
Thuật toán tìm ước chung lớn nhất trong C/C++
Cấu trúc lệnh switch case trong C++ (có bài tập thực hành)
ComboBox - ListBox trong lập trình C# winforms
Random trong Python: Tạo số random ngẫu nhiên
Lệnh cin và cout trong C++
Cách khai báo biến trong PHP, các loại biến thường gặp
Download và cài đặt Vertrigo Server
Thẻ li trong HTML
Thẻ article trong HTML5
Cấu trúc HTML5: Cách tạo template HTML5 đầu tiên
Cách dùng thẻ img trong HTML và các thuộc tính của img
Thẻ a trong HTML và các thuộc tính của thẻ a thường dùng