
是的,从Java 9开始,我们可以将菱形运算符与匿名内部类一起使用。
使用菱形运算符的目的菱形运算符是为了避免冗余代码,并通过不再使用右侧的通用类型来使其更具可读性表达式的一侧。 菱形运算符仅用于正常类,但不适用于匿名内部Java 7 中的类。如果我们尝试将其用于匿名内部类,编译器会抛出错误。
在下面的示例中,我们使用了带有匿名内部类的菱形运算符。
示例
import java.util.*;
public class DiamondOperatorTest {
public static void main(String args[]) {
String[] str = {"Raja", "Adithya", "Jai", "Chaitanya", "Vamsi"};
Iterator itr = new Iterator () { // 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());
}
}
}输出
Raja Adithya Jai Chaitanya Vamsi











