学习
泛型
- 泛型概念
泛型就是把类型明确到创建对象时,或者调用时
泛型的格式
<数据类型> 数据类型是引用数据类型
- 泛型定义在类上
在类上 格式 public class 类名<泛型类型1,…>
public class MyClass<T> { //泛型<T> 我把泛型加在类上
T t;
public T getT() {
return t;
}
public void setT(T t) {
this.t = t;
}
}
-
泛型定义在方法上
在方法上的格式 public <泛型类型> 返回类型 方法名(泛型类型 变量名)
public class MyDemo2<T, U, R> implements MyInterface<T, U, R>{ @Override public R show(T t, U u) { return null; } }
-
泛型定义在接口上
接口上的格式: public interface 接口名<泛型类型>
public class MyDemo implements MyInterface<String,Integer,Integer>{ @Override public Integer show(String s, Integer integer) { return null; } }
-
泛型确定了数据类型以后,那么两边的数据类型要一致
Collection col1 = new ArrayList() ;
- ?extend E 向下限定 后面的子类不能超过前面的数据类型
Collection<? extends Animal> col10 = new ArrayList() ;
-
? supper E 向上限定 后面的父类数据不能小于前面的数据类型
Collection<? super Animal> col13 = new ArrayList() ;
for增强可循环
-
for循环的概述
简化数组和Collection集合的遍历
-
格式
for(元素数据类型 变量 :数组或集合){
使用变量即可,该变量就是元素
}
ArrayList<Integer> list = new ArrayList<Integer>(); list.add(1004); list.add(1000); list.add(1002); list.add(10026); list.add(10077); list.add(10089); list.add(10000); list.add(100444); for(Integer ele:list){ System.out.println(ele); }