JAVA Day26
类型通配符
![]()
package generic;
import java.util.ArrayList;
import java.util.List;
public class Demo02 {
public static void main(String[] args) {
ArrayList<String> stringArrayList =new ArrayList<>();
ArrayList<Integer> integerArrayList =new ArrayList<>();
stringArrayList.add("a");
stringArrayList.add("b");
stringArrayList.add("c");
integerArrayList.add(1);
integerArrayList.add(2);
integerArrayList.add(3);
showList(stringArrayList);
showList(integerArrayList);
}
public static void showList(List<?> list){
for(Object o : list)
System.out.print(o+"\t");
}
}
![]()
package generic;
import java.util.ArrayList;
import java.util.List;
public class Demo02 {
public static void main(String[] args) {
ArrayList<Animal> animals = new ArrayList<>();
ArrayList<Cat> cats = new ArrayList<>();
ArrayList<MiniCat> miniCats =new ArrayList<>();
showList(animals);//报错
showList(cats);
showList(miniCats);
}
public static void showList(List<? extends Cat> list){
for(Object o : list)
System.out.print(o+"\t");
}
}
class Animal{
}
class Cat extends Animal{
}
class MiniCat extends Cat{
}
![]()
public class Demo02 {
public static void main(String[] args) {
ArrayList<Animal> animals = new ArrayList<>();
ArrayList<Cat> cats = new ArrayList<>();
ArrayList<MiniCat> miniCats =new ArrayList<>();
showList(animals);
showList(cats);
showList(miniCats);//报错
}
public static void showList(List<? super Cat> list){
for(Object o : list)
System.out.print(o+"\t");
}
}
class Animal{
}
class Cat extends Animal{
}
class MiniCat extends Cat{
}
- 下限通配符可以添加元素