首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我如何对服装尺寸的列表(例如4 2XL,S,2 2XL)进行排序?

我如何对服装尺寸的列表(例如4 2XL,S,2 2XL)进行排序?
EN

Stack Overflow用户
提问于 2018-01-17 10:08:17
回答 7查看 4.5K关注 0票数 10

我需要你的帮助跟踪查询。鉴于以下清单:

代码语言:javascript
运行
复制
["2XL", "3XL", "4XL", "5XL", "6XL", "L", "M", "S", "XL"]

我怎样才能把它按这个顺序分类呢?

"S“、"M”、"L“、"XL”、“2 XL”、“3 XL”、“4 XL”、“5 XL”、“6 XL”

请注意,每个大小并不总是存在的。

EN

Stack Overflow用户

发布于 2018-01-17 12:07:21

另一种方式可能是:

代码语言:javascript
运行
复制
List<String> desiredOrder = Arrays.asList("S", "M", "L", "XL", "2XL", "3XL", "4XL", "5XL", "6XL");
 String [] array = new String[desiredOrder.size()];
   list.forEach(s->{
       if (desiredOrder.indexOf(s) != -1)
             array[desiredOrder.indexOf(s)] = s;
   });

List<String> set= Stream.of(array).filter(Objects::nonNull).collect(Collectors.toList());

代码语言:javascript
运行
复制
Set<Integer> integers = new HashSet<>();
    list.forEach(s -> {
        if (desiredOrder.indexOf(s) != -1) {
            integers.add(desiredOrder.indexOf(s));
        }
    });

    List<String> sortedItems = integers.stream()
                                       .sorted()
                                       .map(i->desiredOrder.get(i))
                                       .collect(Collectors.toList());
票数 0
EN
查看全部 7 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48298432

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档