package day7yue31;
import java.util.*;
public class ErrorUtils {
//可变参数的类型不要用泛型
public static void faultyMethod(List<String>... listStrArray) //这边有一个传参赋值,不带泛型的对象赋值给带泛型的变量
{
//可变参数当成数组处理,但是没有泛型的数组,所以String丢弃
List[] listArray = listStrArray;
List<Integer> myList = new ArrayList<Integer>();
myList.add(new Random().nextInt(100));
listArray[0] = myList;
String s =String.valueOf(listStrArray[0].get(0));
String s2 =String.valueOf(listStrArray[1].get(0));
System.out.println(s);
System.out.println(s2);
}
public static void main(String[] args){
faultyMethod(Arrays.asList("hello"),Arrays.asList("worldl","nihao"));
}
}
本文通过一个具体的Java代码示例展示了在使用泛型与可变参数时可能出现的问题,特别是当尝试将带有泛型的对象作为可变参数传递时所遇到的类型转换与类型擦除等挑战。
71

被折叠的 条评论
为什么被折叠?



