欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

Collections

时间:2023-07-06

Collections类概述:是针对集合操作的工具类

Collections类的常用方法:

1、public static > void sort(List list); 将指定的列表按升序排序;

2、public static void reverse(List<?>list); 反转指定列表中元素的顺序;

3、public static void shuffle(List<?>list); 使用默认的随机源随机排列指定列表;

package day42;import java.util.ArrayList;import java.util.Collection;import java.util.Collections;import java.util.List;public class CollectionsDemo01 { public static void main(String[] args) { //创建集合对象 List list = new ArrayList(); //添加元素 list.add(100); list.add(10); list.add(30); list.add(40); list.add(70); System.out.println(list); //调用collections的sort方法排序 Collections.sort(list); //按照升序排序 System.out.println(list); //反转方法排序 Collections.reverse(list); System.out.println(list); //随机置换,其实就是每次的顺序都是不一样的,随机的 Collections.shuffle(list); System.out.println(list); }}

示例: 对array进行排序(需要重写compare方法)

代码如下

package day42;public class Student { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public Student(){} public Student(String name, int age){ this.name = name; this.age = age; }}package day42;import java.lang.reflect.Array;import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;public class CollectionsDemo02 { public static void main(String[] args) { ArrayList array = new ArrayList(); Student s1 = new Student("a",5); Student s2 = new Student("b",7); Student s3 = new Student("c",9); Student s4 = new Student("d",5); Student s5 = new Student("d",5); array.add(s1); array.add(s2); array.add(s3); array.add(s4); array.add(s5); //使用Collection sort方法来对年龄排序,要求年龄相同,按照字母越靠前排序 //通过匿名内部类来实现排序方法 Collections.sort(array, new Comparator() { @Override public int compare(Student o1, Student o2) { int num1 = o1.getAge() - o2.getAge(); int num2 = num1 == 0 ? o1.getName().compareTo(o2.getName()): num1; return num2; } }); for(Student s: array){ System.out.println(s.getName()+','+s.getAge()); } }}

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。