首页 > 编程语言 >流倒序排序_java8 stream多字段排序

流倒序排序_java8 stream多字段排序

时间:2023-11-15 18:02:28浏览次数:42  
标签:排序 stream Comparator 降序 comparing 升序 倒序 多字段 属性

 

 

//返回 对象集合以类属性一升序排序

list.stream().sorted(Comparator.comparing(类::属性一));

//返回 对象集合以类属性一降序排序 注意两种写法

list.stream().sorted(Comparator.comparing(类::属性一).reversed());//先以属性一升序,结果进行属性一降序

list.stream().sorted(Comparator.comparing(类::属性一,Comparator.reverseOrder()));//以属性一降序

//返回 对象集合以类属性一升序 属性二升序

list.stream().sorted(Comparator.comparing(类::属性一).thenComparing(类::属性二));

//返回 对象集合以类属性一降序 属性二升序 注意两种写法

list.stream().sorted(Comparator.comparing(类::属性一).reversed().thenComparing(类::属性二));//先以属性一升序,升序结果进行属性一降序,再进行属性二升序

list.stream().sorted(Comparator.comparing(类::属性一,Comparator.reverseOrder()).thenComparing(类::属性二));//先以属性一降序,再进行属性二升序

//返回 对象集合以类属性一降序 属性二降序 注意两种写法

list.stream().sorted(Comparator.comparing(类::属性一).reversed().thenComparing(类::属性二,Comparator.reverseOrder()));//先以属性一升序,升序结果进行属性一降序,再进行属性二降序

list.stream().sorted(Comparator.comparing(类::属性一,Comparator.reverseOrder()).thenComparing(类::属性二,Comparator.reverseOrder()));//先以属性一降序,再进行属性二降序

//返回 对象集合以类属性一升序 属性二降序 注意两种写法

list.stream().sorted(Comparator.comparing(类::属性一).reversed().thenComparing(类::属性二).reversed());//先以属性一升序,升序结果进行属性一降序,再进行属性二升序,结果进行属性一降序属性二降序

list.stream().sorted(Comparator.comparing(类::属性一).thenComparing(类::属性二,Comparator.reverseOrder()));//先以属性一升序,再进行属性二降序

 

标签:排序,stream,Comparator,降序,comparing,升序,倒序,多字段,属性
From: https://blog.51cto.com/u_16253752/8399727

相关文章

  • (链表)05-合并K个已排序的链表
    1importjava.util.*;23/**4*Definitionforsingly-linkedlist.5*publicclassListNode{6*intval;7*ListNodenext;8*ListNode(intx){9*val=x;10*next=null;11*}12*}13*/1......
  • 二叉排序树的删除
    #include<bits/stdc++.h>usingnamespacestd;constintENDFLAG=-1;//输入结束的标志typedefstruct{intkey;//关键字intotherinfo;//其他数据项}ElemType;istream&operator>>(istream&is,ElemType&e){cin>>e.key&......
  • (链表)12-单链表的排序
    1importjava.util.*;23/*4*publicclassListNode{5*intval;6*ListNodenext=null;7*publicListNode(intval){8*this.val=val;9*}10*}11*/12publicclassSolution{13/**14*@paramhead......
  • Python冒泡排序算法
    冒泡排序算法是一种简单的排序算法,其基本思想是通过多次遍历数组,比较相邻的两个元素,如果它们的顺序不对则交换。这样一轮遍历之后,最大(或最小)的元素就会被移动到数组的最后,然后再对剩余的元素进行类似的操作,直到整个数组有序defbubble_sort(arr):n=len(arr)#外层循环控制遍历的......
  • 力扣-34-在排序数组中查找元素的第一个和最后一个位置
    一、题目力扣地址:https://leetcode.cn/problems/find-first-and-last-position-of-element-in-sorted-array/description/二、解法思路:也是二分查找相关题目,详细解法看注释fromtypingimportListclassSolution:"""leetcode:34二分查找类题目,与传统二分查......
  • 表格数据拖拽排序 sortable.js
    需求拖拽表格的行数据,实现排序。问题拖拽后调用接口,但视图没变,还是原来的顺序场景:拖拽表格行数据后,tableDataArr中数据的orderNum值会改变,实现拖拽换序。期望情况:页面根据更改后的orderNum重新排序。实际情况:接口数据变了,但是页面行数据没有改变。也就是说,页面没有实现......
  • SQL Server 分组排序后取第N条数据(或前N条)
    节选自https://blog.csdn.net/cxu123321/article/details/92059001分组取前N条数据SQLSELECT*FROM(SELECTROW_NUMBER()OVER(PARTITIONBYt1.XORDERBYt1.Y)ASRNUM,*FROMTable1t1)ASTWHERET.RNUM=NX:分组的字段;Y:排序的字段;N:第N条......
  • (链表)04-合并两个排序的链表
    /*publicclassListNode{intval;ListNodenext=null;ListNode(intval){this.val=val;}}*/publicclassSolution{publicListNodeMerge(ListNodelist1,ListNodelist2){//添加头节点ListNoderoot=ne......
  • 如何修改Azure SQL server数据库的字符集(UTF-8)排序规则
    ......
  • 实现冒泡排序算法
    实现冒泡排序算法#include<stdio.h> voidswap(int*xp,int*yp){   inttemp=*xp;   *xp=*yp;   *yp=temp;} voidbubbleSort(intarr[],intn){   for(inti=0;i<n-1;i++){       for(intj=0;j<n-i-1;j++){       ......