暑假学习记录25 泛型2
(1)今天学习了泛型的剩下的部分
(2)明天学习Map
(3) 1 类型通配符 <?>
List<?> 表示元素类型未知的List,它的元素可以匹配任意类型,这种带通配符的List仅代表他是各种泛型List的父类,并不能把元素添加到其中
类型通配符上限 List<? extends 类型>
List<? extends Number> 表示的是Number或其子类型
List<? extends Number> list1=new ArrayList<Integer>();
类型通配符下限 List<? super 类型>
List<? extends Number> 表示的是Number或其父类型
List<? extends Number> list2=new ArrayList<Object>();
2 可变参数 格式 修饰符 返回值类型 方法名(数据类型...变量名){}
范例 public static int sum(int...a){}
一个方法如果有多个参数,包含可变参数的情况下,可变参数要放到最后
可变参数中的变量是一个数组
多个数据求和 public static int sum(int...a){
int sum=0;
for(int i: a){
sum+=i;
}
return sum;
}
3 可变参数的使用 Arrays工具类中有一个静态方法
public static <T> List <T>asList(T...a){}
List<String> list=Arrays.aslist("hello","world","java")
返回由指定数组支持的固定大小的列表,不能做增删操作,可以修改
List接口中有一个静态方法
public static <E> List<E> of(E elements){}
返回包含任意数量元素的不可变列表
不能做增删改操作
Set接口中有一个静态方法
public static <E> List<E> of(E elements)
返回一个包含任意数量元素的不可变集合
不能给重复元素,不能做增删操作,没有修改的方法

浙公网安备 33010602011771号