「Java」 @SafeVarargsで可変長引数で警告を表示しない

2022年1月16日

書式
@SafeVarargs
static データの型 変数名(List<String)…変数名)
可変長引数でジェネリクスを使用する場合、@SafeVarargsアノテーションでその警告を表示しない
使用例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
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);
}
}
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); } }
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]
[東京, 大阪]

Java

Posted by arkgame