「Java」 @SafeVarargsで可変長引数で警告を表示しない
書式
@SafeVarargs
static データの型 変数名(List<String)…変数名)
可変長引数でジェネリクスを使用する場合、@SafeVarargsアノテーションでその警告を表示しない
使用例
package com.arkgame.skill.smart; import java.util.ArrayList; import java.util.List; //クラスExampleの定義 class Example { //@SafeVarargsアノテーションの使用 @SafeVarargs static void funcA(List<String>... glst){ // 可変長引数でジェネリクスを使用 //for文で可変リスト変数の値を出力 for (List<String> str : glst) { System.out.println(str); } } } public class SafeVarDemo { public static void main(String[] args) { //String型のリスト 英字 List<String> cftLst = new ArrayList<>(); cftLst.add("study"); cftLst.add("skill"); //Integer型のリスト 日本語の文字 List<String> tLst = new ArrayList<>(); tLst.add("東京"); tLst.add("大阪"); System.out.println("@SafeVarargsアノテーションの実行結果"); //クラス名.staticメソッド名(引数1,引数2) Example.funcA(cftLst,tLst); } }
実行結果
@SafeVarargsアノテーションの実行結果
[study, skill]
[東京, 大阪]