最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java?將list集合數(shù)據(jù)按照時間字段排序的方法

 更新時間:2023年03月13日 10:07:58   作者:小目標(biāo)青年  
這篇文章主要介紹了Java?將list集合數(shù)據(jù)按照時間字段排序,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

示例:

    public  static List<Product> getProductTestList(){
        List<Product> productList=new ArrayList<>();
        productList.add(new Product().setName("兒童護(hù)具").setCreateDate("2023-02-01"));
        productList.add(new Product().setName("青年護(hù)具").setCreateDate("2023-01-01"));
        productList.add(new Product().setName("老人護(hù)具").setCreateDate("2023-01-02"));
        productList.add(new Product().setName("動物護(hù)具").setCreateDate("2023-02-02"));
      return  productList;
    }

要求:

按照創(chuàng)建時間 createDate 字段排序 

方案①: 

使用list的sort方法

.sort(Comparator.comparing(Product::getCreateDate));

代碼示例:

    public  static List<Product> getProductTestList(){
        List<Product> productList=new ArrayList<>();
        productList.add(new Product().setName("兒童護(hù)具").setCreateDate("2023-02-01"));
        productList.add(new Product().setName("青年護(hù)具").setCreateDate("2023-01-01"));
        productList.add(new Product().setName("老人護(hù)具").setCreateDate("2023-01-02"));
        productList.add(new Product().setName("動物護(hù)具").setCreateDate("2023-02-02"));
      return  productList;
    }
 
    public static void main(String[] args) {
        List<Product> productTestList = getProductTestList();
        productTestList.sort(Comparator.comparing(Product::getCreateDate));
        System.out.println(productTestList);
    }

效果:

如果需要倒序,則加上 reversed 在 .comparing(Product::getCreateDate) .reversed()

方案②:

使用 Collections的sort 

Collections.sort(productTestList, new Comparator<Product>() {}

 代碼示例:

    public static void main(String[] args) {
        List<Product> productTestList = getProductTestList();
 
        Collections.sort(productTestList, new Comparator<Product>() {
            @Override
            public int compare(Product o1, Product o2) {
                SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
                try {
                    Date dt1 = format.parse(o1.getCreateDate());
                    Date dt2 = format.parse(o2.getCreateDate());
                    if (dt1.getTime() > dt2.getTime()) {
                        return 1;
                    } else {
                        return -1;
                    }
                } catch (Exception e) {
                    e.printStackTrace();
                }
                return 0;
            }
        });
        System.out.println(productTestList);
    }

效果:

如果需要把順序反過來,則改變 1 和 -1 的返回值 :

效果: 

方案③:

使用stream的sorted

.stream().sorted(Comparator.comparing(Product::getCreateDate)

代碼示例:

    public  static List<Product> getProductTestList(){
        List<Product> productList=new ArrayList<>();
        productList.add(new Product().setName("兒童護(hù)具").setCreateDate("2023-02-01"));
        productList.add(new Product().setName("青年護(hù)具").setCreateDate("2023-01-01"));
        productList.add(new Product().setName("老人護(hù)具").setCreateDate("2023-01-02"));
        productList.add(new Product().setName("動物護(hù)具").setCreateDate("2023-02-02"));
      return  productList;
    }
 
    public static void main(String[] args) {
 
        List<Product> productTestList2 = getProductTestList();
        List<Product> sortList = productTestList2.stream()
                .sorted(Comparator.comparing(Product::getCreateDate))
                .collect(Collectors.toList());
        System.out.println(sortList);
        
    }

效果:

如果需要倒序則:

在compring()后面加上 reversed()

到此這篇關(guān)于Java 將list集合數(shù)據(jù)按照時間字段排序的文章就介紹到這了,更多相關(guān)java list集合時間排序內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

新巴尔虎左旗| 商都县| 沾化县| 昌吉市| 清新县| 平凉市| 常宁市| 峨眉山市| 崇信县| 寻甸| 尖扎县| 京山县| 略阳县| 长丰县| 武平县| 大田县| 吴川市| 汶上县| 合川市| 驻马店市| 涿鹿县| 峨山| 濮阳县| 黄浦区| 长葛市| 双柏县| 玛纳斯县| 宿松县| 平远县| 双牌县| 敦化市| 那曲县| 海兴县| 枝江市| 特克斯县| 上杭县| 兴隆县| 洪雅县| 大埔县| 南涧| 武平县|