我爱编程。
·2023-12-26#提问
想请教一下这种代码是怎么运行的,这个匿名类不就是new了下,然后为什么那个final的list变量就有值了?
import java.util.AbstractList;
class Solution {
public List<String> fizzBuzz(int n) {
return new AbstractList<String>() {
final List<String> list = new ArrayList<>();
void init() {
if (list.isEmpty()) {
for (int i = 1; i <= n; i ) {
if (i % 3 == 0 && i % 5 == 0) {
list.add("FizzBuzz");
} else if (i % 3 == 0) {
list.add("Fizz");
} else if (i % 5 == 0) {
list.add("Buzz");
} else {
list.add(String.valueOf(i));
}
}
}
}
@Overridepublic String get(int index) {
init();
return list.get(index);
}
@Overridepublic int size() {
init();
return list.size();
}
};
}
}
7
0
分享
操作
评论
问答助学
相关内容
0个评论
全部评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
