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

Có thể sử dụng toán tử kim cương với lớp bên trong ẩn danh trong Java 9 không?


Có, chúng tôi có thể sử dụng toán tử kim cương với một lớp ẩn danh bên trong kể từ Java 9 .

Mục đích của việc sử dụng toán tử kim cương là để tránh dư thừa và làm cho nó dễ đọc hơn bằng cách không còn sử dụng chung chung loại ở bên phải của một biểu thức. Toán tử kim cương chỉ được sử dụng cho bình thường lớp học nhưng không dành cho ẩn danh bên trong lớp học trong Java 7. Nếu chúng tôi cố gắng sử dụng nó cho các lớp ẩn danh bên trong, thì trình biên dịch sẽ gặp lỗi .

Trong ví dụ dưới đây, chúng tôi đã sử dụng toán tử kim cương với lớp bên trong ẩn danh.

Ví dụ

import java.util.*;
public class DiamondOperatorTest {
   public static void main(String args[]) {
      String[] str = {"Raja", "Adithya", "Jai", "Chaitanya", "Vamsi"};
      Iterator<String> itr = new Iterator<String>() {      // Anonymous inner class
         int i = 0;
         public boolean hasNext() {
            return i < str.length;
         }
         public String next() {
            if(!hasNext()) {
               throw new NoSuchElementException();
            }
            return str[i++];
         }
      };
      while(itr.hasNext()) {
         System.out.println(itr.next());
      }
   }
}

Đầu ra

Raja
Adithya
Jai
Chaitanya
Vamsi