S-JIS[2024-03-22] 変更履歴
Javaの無名変数について。
Java22(プレビュー版ではJava21)で、無名変数が使えるようになった。
すなわち、使用しない変数に「_」が指定できるようになった。
(Java8では「_」を使うとコンパイル時に警告が出ていた。Java9〜Java21ではコンパイルエラーになっていた。→以前の仕様)
無名変数「_」の例。
使用箇所 | 例 |
---|---|
ローカル変数 | int _ = 1; |
for文 | for (int i = 0, _ = someInt(); i < 10; i++) { |
for each文 | var list = List.of("a", "b", "c"); |
try-with-resources | Closeable c1 = () ->
System.out.println("c1.close"); |
catchブロック | try { |
ラムダ式の引数 | BiFunction<Integer,Integer,Integer> f =
(x, _) -> x * 2; |
ラムダ式の引数(var) | BiFunction<Integer,Integer,Integer> f = (var x,
var _) -> x * 2; |
insntaceofのパターンマッチング | record Point(int x, int y) {} |
switchのパターンマッチング | switch (o) { |