Given:

What is the output?

A. [21, 13, 11]
B. [30]
C. []
D. Compilation fails due to error at line 7
E. Compilation tails due to error at line 10

題解

程式第7行使用到Java的泛型(generic)功能,但是用的並不正確,原因在於泛型不能用在基本資料型態。如果將這裡的「int」改為「Integer」的話,程式的執行結果為:

[30]

程式第10行是Java 8的Lambda和Collection的新特性,removeIf會把Collection物件內所有符合條件的元素刪除,在這裡就是把奇數全部刪除。

可以參考這篇文章來了解Lambda:

https://magiclen.org/java-8-lambda/