Nội dung chính
1. List trong java
List là một interface trong java. Nó chứa các phương thức để chèn và xóa các phần tử dựa trên chỉ số index.
Khai báo interface List trong java
public interface List<E> extends Collection<E>
Các phương thức của interface List trong java
Method | Description |
---|---|
void add(int index,Object element) | Nó được sử dụng để chèn các phần tử vào list tại chỉ số index. |
boolean addAll(int index,Collection c) | Nó được sử dụng để chèn tất cả các yếu tố của c vào danh sách tại chỉ số index. |
object get(int index) | Nó được sử dụng để trả về đối tượng được lưu trữ tại chỉ số index trong list. |
object set(int index,Object element) | Nó được sử dụng để gán phần tử cho vị trí được chỉ định index trong list. |
object remove(int index) | Nó được sử dụng để xóa các phần tử tại vị trí có chỉ số index và trả về phần tử đã xóa. |
ListIterator listIterator() | Nó được sử dụng để trả về một Iterator mà bắt đầu từ phần tử đầu tiên của list. |
ListIterator listIterator(int index) | Nó được sử dụng để trả về một Iterator mà phần tử bắt đầu từ chỉ số index chỉ định. |
Ví dụ về List trong java
Ví dụ 1: Hãy xem ví dụ đơn giản về List trong java sau:
import java.util.ArrayList; import java.util.List; public class ListExample { public static void main(String args[]) { List<String> list = new ArrayList<String>(); list.add("Java"); list.add("C++"); list.add("PHP"); list.add(1, "Python"); System.out.println("Phan tu co index = 2 la: " + list.get(2)); // show list for (String s : list) { System.out.println(s); } } }
Kết quả:
Phan tu co index = 2 la: C++ Java Python C++ PHP
Ví dụ 2: Sử dụng Arrays.asList():
import java.util.Arrays; import java.util.List; public class ListExample1 { public static void main(String args[]) { // create new array String[] arr = { "Java", "C++", "PHP", "Python" }; // convert array to List List<String> list = Arrays.asList(arr); // show list for (String s : list) { System.out.println(s); } } }
Kết quả:
Java C++ PHP Python
2. ListIterator trong java
ListIterator là một interface được sử dụng để duyệt các phần tử của List trong java.
Khai báo interface ListIterator trong java
public interface ListIterator<E> extends Iterator<E>
Các phương thức của interface ListIterator trong java
Method | Description |
---|---|
boolean hasNext() | Phương pháp này trả về true nếu list interator có tồn tại phần tử kế tiếp phần tử hiện tại. |
Object next() | Phương thức này trả về phần tử kế tiếp trong danh sách và vị trí con trỏ tăng lên 1. |
boolean hasPrevious() | Phương pháp này trả về true nếu list interator có tồn tại phần tử kế sau phần tử hiện tại. |
Object previous() | Phương thức này trả về phần tử kế sau trong danh sách và vị trí con trỏ giảm đi 1. |
Ví dụ về ListIterator trong java
Hãy xem ví dụ đơn giả về việc duyệt các phần tử của List trong java bằng cách sử dụng ListIterator:
import java.util.ArrayList; import java.util.List; import java.util.ListIterator; public class ListExample { public static void main(String args[]) { List<String> list = new ArrayList<String>(); list.add("Java"); list.add("C++"); list.add("PHP"); list.add(1, "Python"); System.out.println("Phan tu co index = 2 la: " + list.get(2)); ListIterator<String> itr = list.listIterator(); System.out.println("Duyet cac phan tu tu dau den cuoi:"); while (itr.hasNext()) { System.out.println("\t" + itr.next()); } System.out.println("Duyet cac phan tu tu cuoi ve dau:"); while (itr.hasPrevious()) { System.out.println("\t" + itr.previous()); } } }
Kết quả:
Phan tu co index = 2 la: C++ Duyet cac phan tu tu dau den cuoi: Java Python C++ PHP Duyet cac phan tu tu cuoi ve dau: PHP C++ Python Java