Computer >> Máy Tính >  >> Lập trình >> Java

Bạn có thể truy xuất các phần tử của một tập hợp trong Java bằng bao nhiêu cách?

Bạn có thể truy xuất nội dung của một đối tượng bộ sưu tập theo ba cách -

Sử dụng cho mỗi vòng lặp

Vòng lặp foreach hoặc vòng lặp for nâng cao, cho phép bạn duyệt tuần tự đối tượng thu thập hoàn chỉnh.

Ví dụ

 import java.util.ArrayList; public class RetrievingData {public static void main (String [] args) {ArrayList  list =new ArrayList  (); // Khởi tạo đối tượng ArrayList list.add ("JavaFX"); list.add ("Java"); list.add ("WebGL"); list.add ("OpenCV"); list.add ("OpenNLP"); list.add ("JOGL"); list.add ("Hadoop"); list.add ("HBase"); list.add ("Flume"); list.add ("Mahout"); list.add ("Impala"); System.out.println ("Nội dung của danh sách mảng:"); for (Chuỗi e:list) System.out.println (e); }} 

Đầu ra

 Nội dung của danh sách mảng:JavaFXJavaWebGLOpenCVOpenNLPJOGLHadoopHBaseFlumeMahoutImpala 

Sử dụng Trình lặp lại

Java cung cấp các lớp Iterator và ListIterator để truy xuất các phần tử của đối tượng tập hợp.

  • hasNext () phương thức của các giao diện này trả về true nếu đối tượng collection có phần tử tiếp theo khác thì nó trả về false.

  • Tiếp theo () các phương thức của Iterator và ListIterator trả về phần tử tiếp theo của tập hợp.

Sử dụng hai phương pháp này, bạn có thể truy xuất nội dung từ một đối tượng trình vòng lặp.

  • Tương tự, trước đó () phương thức của ListIterator trả về phần tử trước của tập hợp và hasPrevious () xác định xem đối tượng tập hợp hiện tại có phần tử trước đó hay không.

Bạn có thể nhận được các đối tượng Iterator hoặc ListIterator của một tập hợp bằng cách sử dụng các phương thức Iterator và ListIterator ().

Ví dụ

 import java.util.ArrayList; import java.util.Iterator; import java.util.ListIterator; public class RetrievingData {public static void main (String [] args) {ArrayList  list =new ArrayList  (); // Khởi tạo đối tượng ArrayList list.add ("JavaFX"); list.add ("Java"); list.add ("WebGL"); list.add ("OpenCV"); list.add ("OpenNLP"); list.add ("JOGL"); list.add ("Hadoop"); list.add ("HBase"); list.add ("Flume"); list.add ("Mahout"); list.add ("Impala"); System.out.println ("Nội dung của danh sách mảng (từ đầu đến cuối):"); Lặp lại nó =list.iterator (); while (it.hasNext ()) {System.out.println (it.next ()); } System.out.println ("Nội dung của danh sách mảng (từ cuối đến đầu tiên):"); ListIterator lit =list.listIterator (); while (lit.hasNext ()) {lit.next (); } while (lit.hasPrevious ()) {System.out.println (lit.previous ()); }}} 

Đầu ra

 Nội dung của danh sách mảng (từ đầu đến cuối):JavaFXJavaWebGLOpenCVOpenNLPJOGLHadoopHBaseFlumeMahoutImpala Nội dung của danh sách mảng (từ cuối đến trước):ImpalaMahoutFlumeHBaseHadoopJOGLOpenNLPJOGLHadoopHBaseFlumeMahoutImpala Nội dung của danh sách mảng (từ cuối đến trước):ImpalaMahoutFlumeHBaseHadoopJOGLOpenNLPOpenCVWebGX  Sử dụng phép liệt kê  

Lớp Enumeration chứa một phương thức có tên hasMoreElements () trả về true nếu đối tượng hiện tại chứa nhiều phần tử hơn sau vị trí hiện tại (nếu không, nó trả về false).

Nếu bạn gọi phương thức nextElement () của lớp Enumeration trả về phần tử tiếp theo trong đối tượng liệt kê hiện tại.

Sử dụng hai phương pháp này, bạn có thể truy xuất nội dung của một đối tượng bộ sưu tập.

Ví dụ

 import java.util.Enumeration; import java.util.Vector; public class EnumerationExample {public static void main (String args []) {// khởi tạo một Vector Vector  vec =new Vector  (); // Đưa vào vector vec.add (1254); vec.add (4587); vec.add (5211); vec.add (4205); vec.add (1124); vec.add (8115); // Lấy các phần tử bằng Enumeration Enumeration  en =vec.elements (); while (en.hasMoreElements ()) {System.out.println (en.nextElement ()); }}} 

Đầu ra

 125445875211420511248115