当前位置: 首页 > 知识库问答 >
问题:

groovy中对象的排序数组

宰父志新
2023-03-14

我有一个Object数组,它声明如下所示:

def meal = [['Apple','Tomatoes', 'Coffee'],['Peach','Broccoli', 'Water'],['Orange','Peas', 'Pepsi'],['Banana','Beans', 'Coffee']]

我需要根据每个对象的第三个元素,然后根据第二个元素对这些对象进行排序。因此我的输出将是:

meal = [['Banana','Beans', 'Coffee'], ['Apple','Tomatoes', 'Coffee'],['Orange','Peas', 'Pepsi'],['Peach','Broccoli', 'Water'],]

共有1个答案

虞安康
2023-03-14

首先,以相反的顺序迭代所需的排序。希望下面的代码对您有所帮助。

def list = [['Apple','Tomatoes', 'Coffee'],['Peach','Broccoli', 'Water'],['Orange','Peas', 'Pepsi'],['Banana','Beans', 'Coffee']];

list = list.sort{ a,b -> a[1] <=> b[1] }
list = list.sort{ a,b -> a[2] <=> b[2] }

println(list);
 类似资料:
  • 本文向大家介绍java 对象数组排序,包括了java 对象数组排序的使用技巧和注意事项,需要的朋友参考一下 废话不多说直接奉上代码先: 另附上Arrays.sort用法:       1. 数字排序 int[] intArray = new int[] { 4, 1, 3, -23 };   Arrays.sort(intArray);   输出: [-23, 1, 3, 4]   2. 字符串排

  • 返回按属性(props)和顺序(orders)排序的对象数组。 在默认值为 0 的 props 数组上使用 Array.sort(),Array.reduce(),根据传递的顺序使用数组解构来交换属性位置。 如果没有传递 orders 数组,那么默认情况下它会按 'asc' 排序(升序) 。 const orderBy = (arr, props, orders) => [...arr].so

  • 本文向大家介绍js中的数组对象排序分析,包括了js中的数组对象排序分析的使用技巧和注意事项,需要的朋友参考一下 一、普通数组排序     js中用方法sort()为数组排序。sort()方法有一个可选参数,是用来确定元素顺序的函数。如果这个参数被省略,那么数组中的元素将按照ASCII字符顺序进行排序。如: 因为字母A、B的ASCII值分别为65、66,而a、b的值分别为97、98,所以上面输出的结

  • 问题内容: 我对在groovy中使用排序的映射感兴趣(使用gremlin,这是用于图形数据库的DSL)。 我在这里按排序的地图查看了此博客文章,但我仍然有些困惑。 排序的地图如何声明?它与地图的标准方式有何不同? 使用排序映射时,插入列表中的项目是否会按照插入顺序进行?还是在对已排序的地图中的项目进行排序之前必须先运行? 问题答案: 如果您只是这样声明地图: 然后,您可以看到Groovy默认情况下

  • 本文向大家介绍PowerShell 排序:排序对象/排序,包括了PowerShell 排序:排序对象/排序的使用技巧和注意事项,需要的朋友参考一下 示例 按升序或降序对枚举进行排序 同义词: 假设: 升序排序是默认设置: 阿龙 阿龙 伯尼 查理· 丹尼 要请求降序排列: 丹尼· 查理 ·伯尼· 亚伦 ·亚伦 您可以使用表达式进行排序。 阿龙 阿龙 丹尼· 伯尼· 查理

  • 我有一个带有两个数组的javascript对象,如图所示, 我试图按排名1,2,3进行排序。。但保留与等级相关的名称。 我应该重新配置我的对象以使排序更容易吗? 我目前正在使用 按顺序排列,但名称不保留。 感谢大家的帮助。谢谢