Day13 JavaSE基础复习 (16)List集合(17)Set集合

    xiaoxiao2022-07-05  184

    (16)List集合 

    一.ArrayList

    contains();   //判断是否包含,底层是.equals方法,比较对象内容时,需要重写remove();     //判断是否删除,同上

    二.泛型

    方法泛型最好与类的泛型一致,如果不一致,需要在该方法上声明该泛型   例如:public<T> void show(T t){}静态方法必须声明自己的泛型泛型通配符<?> ? extends E            //固定上边界,E及其子类 ? super E               //固定下边界,E及其父类增强for     快捷键:fore + alt/普通for循环,在删除集合中元素时,索引要 --          list.remove(i--); //防止漏删迭代器删除         it.remove();   //使用迭代器的删除增强for循环,不能删除,只能遍历数组转换成集合 List list = Arrays.asList(arr);       //数组转换成集合不能增加或减少元素                                                    //但可以用集合的思想操作数组,可使用集合的方法基本数据类型转换成集合,会将整个数组当作一个对象转换String[] arr = list.toArray(new String[1]);        //当集合转换数组时,数组的长度如果小于等于集合的size时,          转换后的数组长度等于集合的size如果数组的长度大于了size,分配的数组长度就和指定的长度一样

    (17)Set集合

     TreeSet集合是用来对象元素进行排序的,同样它也可以保证元素的唯一 集合中的对象元素要实现Compareable接口 当compareTo方法返回0的时候集合中只有一个元素 当compareTo方法返回正数的时候集合会怎么存就怎么取 当compareTo方法返回负数的时候集合会倒序存储两种排序方式: TreeSet构造函数什么都不传,默认按照类中Comparable的顺序 TreeSet如果传入Compatator,就会优先按照Comparator 在传入比较器时可以用匿名内部类  TreeSet ts = new TreeSet(new Comparator(){重写方法});
    最新回复(0)