栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java系列之:Collections概述和使用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java系列之:Collections概述和使用

Java系列之:Collections概述和使用
  • 一、Collections概述和使用
  • 二、ArrayList存储学生对象并排序

一、Collections概述和使用

Collections类的概述:

  • 针对集合操作的工具类

Collections类的常用方法:

  • public static > void sort(List list):将指定的列表按升序排序
  • public static void reverse(List list):反转指定列表中元素的顺序
  • public static void shuffle(List list):使用默认的随机源随机排列指定的列表
import java.util.ArrayList;
import java.util.Collections;

public class CollectionsDemo {

    public static void main(String[] args) {
        //创建集合对象
        ArrayList arrayList = new ArrayList<>();

        arrayList.add(30);
        arrayList.add(40);
        arrayList.add(60);
        arrayList.add(50);
        arrayList.add(20);


        Collections.sort(arrayList);

//        Collections.shuffle(arrayList);
//
//        Collections.reverse(arrayList);

        System.out.println(arrayList);


    }
}
二、ArrayList存储学生对象并排序

需求:ArrayList存储学生对象,使用Collections对ArrayList进行排序。要求:按照数据库id从小到大排序,年龄相同时,按照数据库的名字顺序排序

思路:

  • 定义数据库类
  • 创建ArrayList集合对象
  • 创建数据库对象
  • 把数据库添加到集合
  • 使用Collections对ArrayList集合排序
  • 遍历集合

定义数据库类

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class Dataset {
     
    private String databaseName;

    
    private Integer databaseId;

}

遍历集合

import com.bigdata.plus.Dataset;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;

public class CollectionsDemo {

    public static void main(String[] args) {
        //创建集合对象
        ArrayList arrayList = new ArrayList();

        Dataset dw = new Dataset("dw", 10);
        Dataset optics = new Dataset("optics", 20);
        Dataset product = new Dataset("product", 5);
        Dataset dw1 = new Dataset("cw", 10);

        arrayList.add(dw);
        arrayList.add(optics);
        arrayList.add(product);
        arrayList.add(dw1);


        //使用Collections对ArrayList集合排序
        //sort(List list, Comparator c)
        Collections.sort(arrayList, new Comparator() {
            @Override
            public int compare(Dataset o1, Dataset o2) {

                //按照数据库id排序,id相同时,按照数据库名字排序
                Integer num = o1.getDatabaseId() - o2.getDatabaseId();
                Integer num2 = num==0?o1.getDatabaseName().compareTo(o2.getDatabaseName()):num;
                return 2;
            }
        });

        for(Dataset s : arrayList){
            System.out.println(s.getDatabaseName() + " :" + s.getDatabaseId());
        }
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/842138.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号