继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Java List

Curtis_yang
关注TA
已关注
手记 63
粉丝 62
获赞 1091

1、List 是接口,实现子类是:ArrayList
2、集合+泛型
3、add 方法,参数可以是,基本数据类型,也可以是类的实例对象
4、addAll
5、size 集合长度
6、get 根据索引获取集合中的元素
7、remove 根据索引删除集合中的元素
8、set 修改
9、iterator 方法
10、Iterator 接口 hasNext方法 next 方法
11、集合循环三种方式

public class Course {

    private String id;
    private String name;

    public Course() {
    }

    public Course(String id, String name) {
        this.id = id;
        this.name = name;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "课程ID:" + this.id + "、课程名称:" + this.name;
    }
}
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;

public class TestList {

    private List list;

    public TestList() {
        list = new ArrayList();
    }

    public void add01() {
        Course c1 = new Course("1", "java");
        list.add(c1);
        System.out.println(list.get(0));// 获取指定索引位置集合中元素
        System.out.println(list.size());// 集合长度
    }

    public void add02() {
        Course c1 = new Course("2", "C");
        list.add(c1);
        System.out.println(list.get(0));

        Course c2 = new Course();
        c2.setId("3");
        c2.setName("python");
        list.add(0, c2);// 往集合内指定位置添加元素
        System.out.println(list.get(0));
    }

    public void add03() {
        Course[] courses = {new Course("4", "C++"), new Course("5", "C#")};
        list.addAll(Arrays.asList(courses));// 批量往集合中添加元素。数组转换成集合。
        System.out.println(list.size());
    }

    public void modifyList() {
        list.set(4, new Course("5", "vb"));
    }

    public void removeList() {
        list.remove(4);
    }

    public void listFor() {
        for (int i = 0; i < list.size(); i++) {
            Course course = (Course) list.get(i);
            System.out.println(course);
        }
    }

    public void listForEach() {
        for (Object obj : list) {
            Course course = (Course) obj;
            System.out.println(course);
        }
    }

    public void listIterator() {
        Iterator iterator = list.iterator();
        while (iterator.hasNext()) {
            Course course = (Course) iterator.next();
            System.out.println(course);
        }
    }

    public static void main(String[] args) {
        TestList lt = new TestList();
        // 往集合中添加元素
        lt.add01();

        // 往集合中指定索引位置添加元素
        lt.add02();

        System.out.println("-----------华丽的分割线----------");
        // 数组转换成集合,添加到集合中
        lt.add03();
        lt.listFor();

        System.out.println("-----------华丽的分割线----------");
        lt.modifyList();
        lt.listIterator();

        System.out.println("-----------华丽的分割线----------");
        lt.removeList();
        lt.listForEach();
    }
}
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class TestListGeneric {

    private List<Course> list;

    public TestListGeneric() {
        list = new ArrayList<>();
    }

    public void add01() {
        Course c1 = new Course("1", "java");
        list.add(c1);
    }

    public void add02() {
        list.add(new Course("1", "java"));
        System.out.println(list.size());
    }

    public void listFor() {
        for (Course course : list) {
            System.out.println(course);
        }
    }

    public void listIterator() {
        Iterator<Course> iterator = list.iterator();
        while (iterator.hasNext()) {
            Course course = iterator.next();// 不需要进行数据类型的强制转换
            System.out.println(course);
        }
    }

    // 泛型+子类
    public void testChild() {
        ChildCourse ccr = new ChildCourse();
        ccr.setId("3");
        ccr.setName("我是子类型的课程对象实例~~");
        list.add(ccr);
    }

    // 包装类
    public void testBasicType() {
        List<Integer> list = new ArrayList<Integer>();
        list.add(1);
        System.out.println("基本类型必须使用包装类作为泛型!" + list.get(0));
    }

    public static void main(String[] args) {
        TestListGeneric tlg = new TestListGeneric();
        tlg.add01();
        tlg.listFor();

        System.out.println("-----------华丽的分割线----------");
        tlg.add02();
        tlg.listIterator();

        System.out.println("-----------华丽的分割线----------");
        tlg.testChild();
        tlg.listIterator();
    }
}
打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP