java在源码中排在最前面的语句

更新时间:2023-06-19 13:37:17 阅读: 评论:0

java在源码中排在最前面的语句
首先给定一个指定关键字的排序,给出一个字符串列表,对列表进行排序,若字符串列表中包含了关键字,则该这种字符串优先级高,排前面,并且还要根据该字符串所包含的关键字顺序排序,其他没有包含关键字的字符串则靠后,顺序不用关心
所以我引用了新的编程元素,因为给出的orderings是有顺序的,所以只有一个字符串是不能体现这个顺序的,我新增加了一个元素OrderParam
@Getter
@Builder
public class OrderParam{
private String param;
// 值越小,优先级越高
private int order;
}
所以之前
List orderings= Stream.of("温度", "运行时间").List());
就变为
List orderings= ateOrderings("温度", "运行时间");
这里写了一个工具类OrderParams
public class OrderParams{
/**
* 根据字符串数组生成OrderParam集合
* @param params
* @return考研英语试题>cesar chavez
*/
ice pack
public static List createOrderings(String ... params){
return IntStream.range(0, params.length)
.mapToObj(i -> OrderParam.builder().param(params[i]).order(i).build())
.List());
}
}hcu
关于秋天的成语然后最后的测试类写出来就是这个样子
有道翻译器下载
public class Test {
addoil/**
* 这里思路很简单,orderings是有顺序,给出的target先按照orderings的顺序设定它的优先级,然后直接根据优先级排序就可以了
* @param args
*/
public static void main(String[] args) {pollution是什么意思
List orderings= ateOrderings("温度", "运行时间");
List target= Stream.of("sa", "温度1", "ttttt", "运行时间", "温度", "运行时间ss")
.List());
List result = target.stream()
.map(t -> toOrderParam(orderings, t))
爱怎么说// 这里已经转化成了OrderParam了,所以直接根据OrderParam的order排序即可
.paring(OrderParam::getOrder))
.map(OrderParam::getParam)
.List());
System.out.println(result);
}
private static OrderParam toOrderParam(List orderings, String t) {
return orderings.stream()
.filter(orderParam -> t.Param()))
.findFirst()
.map(orderParam -> OrderParam.builder().param(t).Order()).build())
// 没有包含在orderings里的,就给一个最低优先级即可
.orEl(OrderParam.builder().param(t).order(Integer.MAX_VALUE).build());innovator
}

本文发布于:2023-06-19 13:37:17,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/78/991328.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:字符串   关键字   顺序   排序   包含   列表   出来   给出
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图