首页 > 其他 > 详细

collections方法记录

时间:2019-12-29 19:16:20      阅读:71      评论:0      收藏:0      [点我收藏+]

1.addAll()方法:往集合中添加一些元素

                格式:public static <T> boolean addAll(Collection<T> c,T... elements)

代码演示:

//演示集合中的方法
public class CollectionsDemo {
    public static void main(String[] args) {
        List<String> list=new ArrayList<String>() ;
        list.add("Icey");
        Collections.addAll(list,"aaa","bb","c");
        System.out.println(list);
    }
}

运行结果:

技术分享图片

2.shuffle()方法:打乱集合顺序

                 格式:public static void  shuffle(List<?> list)

代码演示:

//打乱顺序shuffle()方法
Collections.shuffle(list);
System.out.println(list);

运行结果:

技术分享图片

3.sort()方法:按照Comparator指定的规则给集合中的元素排序

            格式:public static <T> void sort(List<T> list, Comparator<? super T>)

注意:

(1)sort方法默认为升序

(2)升序:return 前一个参数.变量 - 后一个参数.变量;

(3)降序:return 后一个参数.变量 - 前一个参数.变量;

(4)当两个变量值相同时,默认谁先加入集合,谁就排在前面。

若:年龄相同时,比较名字的首字母升序:return this.getName().charAt(0)-o.getName().charAt(0);

 代码演示:

import java.util.*;

public class Demo3 {
    public static void main(String[] args) {
        List<Person> list2=new ArrayList<>();
        Person p1=new Person(18,"Icey","female");
        Person p2=new Person(19,"Shane","male");
        Person p3=new Person(22,"Amda","female");
        Person p4=new Person(15,"maxy","male");
        Person p5=new Person(18,"luxy","male");
        Collections.addAll(list2,p1,p2,p3,p4,p5);
        Collections.sort(list2, new Comparator<Person>() {
            @Override
            public int compare(Person person, Person t1) {
                //按照年龄升序排序
                if (person.getAge() != t1.getAge()) {
                    return person.getAge() - t1.getAge();
                } else {
                    //如果年龄相同,就按照名字首字母降序排序
                    return t1.getName().charAt(0)-person.getName().charAt(0);
                }
            }
        });
        System.out.println(list2);
    }
}

运行结果:

[Person{age=15, name=‘maxy‘, gender=‘male‘}, Person{age=18, name=‘luxy‘, gender=‘male‘}, Person{age=18, name=‘Icey‘, gender=‘female‘},

Person{age=19, name=‘Shane‘, gender=‘male‘}, Person{age=22, name=‘Amda‘, gender=‘female‘}]

collections方法记录

原文:https://www.cnblogs.com/iceywu/p/12040404.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!