集合的练习

ArrayList<String> list = new ArrayList<>();
        List list1 = new ArrayList();
        list1.add("效力");
        list1.add("张山");
        //list.of() 新特性
        //添加元素
        list.add("小明");
        list.add("张三");
        list.addAll(list1);  //java 1.8 index(可选参数)- 表示集合元素插入处的索引值,c - 要插入的集合元素
        System.out.println(list);
        //修改元素
        list.set(0,"小黄");
        System.out.println(list);
        //判断元素
        boolean b = list.contains("张三");
        System.out.println(b);
        boolean contains = list.containsAll(list1);
        System.out.println(contains);

        //获取对象的索引位置
        int a = list.indexOf("张三");
        System.out.println(a);

        //判断集合是否为空
        System.out.println(list.isEmpty()); //返回值类型是boolean

        //输出集合的个数
        System.out.println(list.size());

        //删除元素 对象 索引
        int c = 1;  //基本数据类型,封装类行不可以
        list.remove("张三"); //boolean
        list.remove(c);
        System.out.println(list);

        list.removeAll(list1);

        list.clear(); //清空

        //遍历
        for (Object o : list) {
            System.out.println(o);
        }

        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }

    }
  /*
        * 泛型不支持八大数据类型
        * */
        /*
        * 排序
        * */
        List<Integer> list = new ArrayList<>();
        list.add(10);
        list.add(11);
        list.add(13);
        list.add(4);
        list.add(12);
        System.out.println(list);

        list.sort((a,b)->a-b);  //升序
        System.out.println(list);

        // Collections 集合类型
        //升序,默认
        Collections.sort(list);
        System.out.println(list);
        //降序
        Collections.sort(list,(a,b)->b-a);
        System.out.println(list);
        //升序
        Collections.sort(list, (a, b) -> a - b);
        System.out.println(list);

        //乱序、洗牌
        Collections.shuffle(list);
        System.out.println(list);

        System.out.println("=================");

        /*
        * 字符对象
        * */
        ArrayList<String> arrayList = new ArrayList<>();
        arrayList.add("java");
        arrayList.add("mysql");
        arrayList.add("javaee");
        arrayList.add("Android");
        arrayList.add("面向对象");
        System.out.println(arrayList);

        int size = arrayList.size();
        System.out.println(size);
        //工具类
        Collections.sort(arrayList); //升序
        System.out.println(arrayList);
        Collections.sort(arrayList,(a,b)->b.compareTo(a));  //降序
        System.out.println(arrayList);

        //乱序/洗牌
        Collections.shuffle(arrayList);
        System.out.println(arrayList);

        //根据字符串升序,经行排序 降序
        Collections.sort(arrayList,(a,b)->b.length()-a.length());
        System.out.println(arrayList);

        //升序
        Collections.sort(arrayList,(a,b)->a.length()-b.length());


List<Student> list = new ArrayList<>();
        Student student = new Student(10,"李四海",55);
        Student student1 = new Student(20,"张三峰石",25);
        Student student2 = new Student(15,"赵六",15);
        Student student3 = new Student(22,"张三丰",88);
        Student student4 = new Student(3,"周强",76);
        list.add(student);
        list.add(student1);
        list.add(student2);
        list.add(student3);
        list.add(student4);
        System.out.println(list);
        Collections.sort(list);
        System.out.println(list);

        //根据成绩升序
        Collections.sort(list,(a,b)->a.getScore()-b.getScore());
        System.out.println(list);
        //根据成绩降序
        Collections.sort(list,(a,b)->b.getScore()-a.getScore());
        System.out.println(list);

        //根据名字排序
        Collections.sort(list,(a,b)->a.getName().compareTo(b.getName()));
        System.out.println(list);
        Collections.sort(list,(a,b)->b.getName().compareTo(a.getName()));
        System.out.println(list);

        //洗牌
        Collections.shuffle(list);
        System.out.println(list);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值