zoukankan      html  css  js  c++  java
  • collections方法记录

    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'}]

  • 相关阅读:
    java算法
    2012 要找回曾经的忘我的激情
    啊啊啊
    利用ORACLE JOB 模拟多线程应用
    有没有一种数据库叫思科
    且行好事,莫问前程
    女人浪漫的好点子
    What is the difference between interface and abstract class
    优秀是一种习惯
    C#判断ContextMenuStrip右键菜单的来源(从哪个控件弹出来的) (转载)
  • 原文地址:https://www.cnblogs.com/iceywu/p/12040404.html
Copyright © 2011-2022 走看看