鉴于彩虹颜色的排序方式如下:ROYGBIV(R =红色,O =橙色,Y =黄色,G =绿色,B =蓝色,I =靛蓝,V =紫色)我如何获取列表:
def partialUnorderedList =["orange", "blue", "red","green"]
Run Code Online (Sandbox Code Playgroud)
并将其分类为ROYGBIV订单,从而导致:
def partialOrderedList = ["red", "orange", "green", "blue"]
Run Code Online (Sandbox Code Playgroud)
这是我对这个问题的看法:
def order = ["red", "orange", "yellow", "green", "blue", "indigo", "violet"]
def input = ["orange", "blue", "red", "green"]
def sorted = input.sort { order.indexOf it }
Run Code Online (Sandbox Code Playgroud)
它使用输入列表中给定元素的引用列表中的索引位置作为排序标准.