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) { |