容器的分类
泛型的概念:
泛型相当于占位符,告诉编译器调用泛型的时候必须传入实际类型
package 容器;
public class 泛型 {
public static void main(String[] args) {
MyCollection<String> mc=new MyCollection<String>();//实参
mc.set("高淇",0);
//mc.set(8888,1);
//Integer a=(Integer)mc.get(1);
String b=(String) mc.get(0);//泛型之后不用强制转换
}
}
class MyCollection<E>{//形参
Object[] objs=new Object[5];
public void set(E e,int index){
objs[index]=e;
}
public E get(int index){
return (E)objs[index];
}
}
TestList
remove移除时是移除地址 对象还在
package 容器;
import java.util.*;
//测试Collection接口中的方法
public class TestList {
public static void main(String[] args) {
Collection<String> c=new ArrayList<String>();
System.out.println(c.size());
System.out.println(c.isEmpty());
c.add("高老大");
c.add("高老二");
System.out.println(c);
System.out.println(c.size());
System.out.println(c.contains("高老二"));//是否包含高老二
System.out.println(c.contains("高老五"));
Object[] objs=c.toArray();//转换成Object数组
System.out.println(objs);
c.remove("高老二");
System.out.println(c);
c.clear();//移除所有元素
System.out.println(c.size());
}
}
package 容器;
import java.util.*;
public class TestList2 {
public static void main(String[] args) {
test02();
}
public static void test01() {}
public static void test02(){
List<String> list01=new ArrayList<>();
//ArrayList<String> list2=new List<>();
list01.add("aa");
list01.add("bb");
list01.add("cc");
List<String>list02=new ArrayList<>();
list02.add("aa");
list02.add("dd");
list02.add("ee");
System.out.println("list01:"+list01);
//list01.addAll(list02);
//list01.removeAll(list02);//删除相同的部分
list01.retainAll(list02);
System.out.println("list01:"+list01);
System.out.println(list01.containsAll(list02));
}
}
package 容器;
import java.util.ArrayList;
import java.util.List;
public class TestList3 {
public static void main(String[] args) {
test03();
}
public static void test03(){
List<String>list =new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
System.out.println(list);
list.add(2,"高淇");
System.out.println(list);
list.remove(2);
list.set(2,"高老二");
System.out.println(list);
System.out.println(list.get(2));
list.add("D");
list.add("C");
list.add("B");
list.add("A");
System.out.println(list);
System.out.println(list.indexOf("B"));//不存在返回-1
System.out.println(list.lastIndexOf("B"));//从右向左第一个元素
}
}