Sự khác nhau giữa Iterator và ListIterator trong Java
Khi sử dụng Java Collections ta thường hay sử dụng Iterator để duyệt danh sách giữa các phần tử, tuy nhiên ta cũng có một cách khác đó là sủ dụng ListIterator.
Sự khác nhau cơ bản giữa Iterator và ListIterator trong Java là ListIterator có thể duyệt lùi về phía trước, còn Iterator thì không!
Code:
Ngoài ra ListIterator còn implements Iterator nên chứa thêm 1 số chức năng như thêm mới 1 phần tử, thay thế phần tử, lấy index của phần tử trước/sau nó...
Sự khác nhau cơ bản giữa Iterator và ListIterator trong Java là ListIterator có thể duyệt lùi về phía trước, còn Iterator thì không!
Code:
import java.util.ArrayList; import java.util.List; import java.util.ListIterator; public class ListAndListIterator { public static void main(String[] args) { // Tạo một đối tượng List (Chỉ chứa các String) Listlist = new ArrayList (); list.add("Một"); list.add("Hai"); list.add("Ba"); list.add("Bốn"); // Lấy ra đối tượng ListIterator để duyệt danh sách. ListIterator listIterator = list.listIterator(); // Hiện tại con trỏ đang đứng tại ví trí đầu danh sách. // Đứng tại chỉ số 0. // Lấy ra phần tử đầu tiên trong danh sách, con trỏ tiến một bước. String first = listIterator.next(); System.out.println("first:" + first);// -->"Một" // Hiện tại con trỏ đang đứng tại vị trí chỉ số 1 // Lấy ra phần tử tiếp theo. String second = listIterator.next(); System.out.println("second:" + second);// -->"Hai" // Kiểm tra xem con trỏ có thể nhẩy lùi 1 vị trí không if (listIterator.hasPrevious()) { // Lùi con trỏ 1 trị trí. String value = listIterator.previous(); System.out.println("value:" + value);// -->"Hai" } System.out.println(" ----- "); while (listIterator.hasNext()) { String value = listIterator.next(); System.out.println("value:" + value); } } }
Kết quả: first:Một second:Hai value:Hai ----- value:Hai value:Ba value:Bốn
Ngoài ra ListIterator còn implements Iterator nên chứa thêm 1 số chức năng như thêm mới 1 phần tử, thay thế phần tử, lấy index của phần tử trước/sau nó...
Nhận xét
Đăng nhận xét