Iterator:迭代器(遍历数组)
1,内部的方法:hashNext():判断是否有一个可访问的元素
next():指针下移一位,并返回该值
remove():删除指针所指的数据
2,集合对象每次调用iterator()方法都得到一个全新的迭代器对象,默认游标都在集合的第一个元素
3,内部定义了remove(),可以在遍历的时候,删除集合中的元素,此方法不同于集合直接调用迭代器 的remove()
public class Demo {
public static void main(String[] args) {
Collection collection = new ArrayList();
collection.add("aaa");
collection.add("bbb");
collection.add("ccc");
Iterator iterator = collection.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
}
}
增强for循环(遍历用)(底层为迭代器)(iter快捷建)
不可以用于赋值
泛型:<E><T>常用的泛型
可以是任何一种类型,可以用来规范我们的集合
好多用法看看
public class Demo2 {
public <T> void show(T t){
System.out.println(t);
}
}
class Ation{
public static void main(String[] args) {
Demo2 demo2 = new Demo2();
demo2.show("kxbb");
demo2.show(18);
demo2.show(true);
demo2.show(13.14);
}
}
interface Generics<T> {
void show(T t);
}
class Demo3<T> implements Generics<T> {
@Override
public void show(T t) {
System.out.println(t);
}
}
class Demo4 implements Generics<Integer>{
@Override
public void show(Integer t) {
System.out.println(t);
}
}
public class Demo5 {
public static void main(String[] args) {
Demo3<String> demo3 = new Demo3<>();
demo3.show("aaa");
Demo3<Integer> demo31 = new Demo3<>();
demo31.show(1);
Demo4 demo4 = new Demo4();
demo4.show(2);
demo4.show(4);
}
}
public class Demo6 {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
show(list);
}
public static void show(List<String> list){
String s = list.get(0);
System.out.println("s = " + s);
}
}
public class Generic<T> {
private T t; //属性
public T getT() {
return t;
}
public void setT(T t) {
this.t = t;
}
}
class GenericTest {
public static void main(String[] args) {
Generic<String> gg = new Generic();
gg.setT("kxbb");
System.out.println(gg.getT());
Generic<Integer> gg2 = new Generic<>();
gg2.setT(18);
System.out.println(gg2.getT());
Generic<Boolean> gg3 = new Generic<>();
gg3.setT(true);
System.out.println(gg3.getT());
}
}