当前位置: 首页 > news >正文

网站keyword如何排列仿大学网站网页代码

网站keyword如何排列,仿大学网站网页代码,成都网站建设新线加,wordpress 如何搬家在Java中,有多种方法可以对Map进行排序,但是我们将重点介绍Java 8 Stream,这是实现目标的一种非常优雅的方法。 学习一下HashMap的merge()函数 在学习Map排序之前,有必要讲一下HashMap的merge()函数,该函数应用场景就…

在Java中,有多种方法可以对Map进行排序,但是我们将重点介绍Java 8 Stream,这是实现目标的一种非常优雅的方法。

学习一下HashMap的merge()函数

在学习Map排序之前,有必要讲一下HashMap的merge()函数,该函数应用场景就是当Key重复的时候,如何处理Map的元素值。这个函数有三个参数:

  • 参数一:向map里面put的键
  • 参数二:向map里面put的值
  • 参数三:如果键发生重复,如何处理值。可以是一个函数,也可以写成lambda表达式。
    String k = "key";HashMap<String, Integer> map = new HashMap<String, Integer>() {{put(k, 1);}};map.merge(k, 2, (oldVal, newVal) -> oldVal + newVal);

上面一段代码,首先创建了一个HashMap,并往里面放入了一个键值为k:1的元素。当我们调用merge函数,往map里面放入k:2键值对的时候,k键发生重复,就执行后面的lambda表达式。表达式的含义是:返回旧值oldVal加上新值newVal(1+2),现在map里面只有一项元素那就是k:3。

按Map的键排序

下面一个例子使用Java 8 Stream按Map的键进行排序:

    // 创建一个Map,并填入数据Map<String, Integer> codes = new HashMap<>();codes.put("United States", 1);codes.put("Germany", 49);codes.put("France", 33);codes.put("China", 86);codes.put("Pakistan", 92);// 按照Map的键进行排序Map<String, Integer> sortedMap = codes.entrySet().stream()    .sorted(Map.Entry.comparingByKey()).collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue,(oldVal, newVal) -> oldVal,LinkedHashMap::new));// 将排序后的Map打印sortedMap.entrySet().forEach(System.out::println);

看上文中第二段代码:

  • 首先使用entrySet().stream() 将Map类型转换为Stream流类型。
  • 然后使用sorted方法排序,排序的依据是Map.Entry.comparingByKey(),也就是按照Map的键排序
  • 最后用collect方法将Stream流转成LinkedHashMap。 其他参数都好说,重点看第三个参数,就是一个merge规则的lambda表达式,与merge方法的第三个参数的用法一致。由于本例中没有重复的key,所以新值旧值随便返回一个即可。

上面的程序将在控制台上打印以下内容,键(国家/地区名称)以自然字母顺序排序:

    China=86France=33Germany=49Pakistan=92United States=1

按Map的值排序

使用Stream API按其值对Map进行排序:

    Map<String, Integer> sortedMap2 = codes.entrySet().stream().sorted(Map.Entry.comparingByValue()).collect(Collectors.toMap(Map.Entry::getKey,Map.Entry::getValue,(oldVal, newVal) -> oldVal,LinkedHashMap::new));sortedMap2.entrySet().forEach(System.out::println);

结果:

    United States=1France=33Germany=49China=86Pakistan=92

使用TreeMap按键排序

大家可能都知道TreeMap内的元素是有顺序的,所以利用TreeMap排序也是可取的一种方法。您需要做的就是创建一个TreeMap对象,并将数据从HashMapput到TreeMap中,非常简单:

    // 将 `HashMap` 转为 `TreeMap`Map<String, Integer> sorted = new TreeMap<>(codes);sorted.entrySet().forEach(System.out::println);

结果:

    China=86France=33Germany=49Pakistan=92United States=1

如上所示,键(国家/地区名称)以自然字母顺序排序。

http://www.yayakq.cn/news/88355/

相关文章:

  • 公司网站自己可做吗四川宜宾今天最新消息
  • 网站建设座谈会上的发言北京免费网站制作
  • 做一下网站需要什么哈尔滨工程交易信息网
  • 合肥建站平台上海网站开发设计培训
  • 如何注销网站备案负责人公司网站开发服务费属于无形资产哪一类
  • 找做网站技术人员wordpress tax
  • 宝安区网站建设库尔勒网站商城建设
  • 昆明网站建设企业威海千淼网站建设
  • 菜鸟网站编程城乡规划专业招聘信息网
  • 晋城中英文网站建设长沙工商注册网上登记
  • 花瓣网是仿国外那个网站做的wordpress连接不了ftp
  • 网站seo的重要性wordpress 加轮播图
  • 西丽网站设计怎么才能自己创一个平台
  • 单机游戏大全网站开发建企业网站价格
  • 常州网站建设企业郑州做网站外包的公司
  • 网站建设公司怎样选做豆腐交流经验的网站
  • 商业设计网站wordpress二维码制作教程
  • 门户网站建设 请示wordpress js文件
  • 苏州h5建站蛇口网站建设公司
  • 网站开发术语企业网站建设首选智投未来1
  • 自己手机怎么免费做网站网站app的区别是什么
  • 河北省建设安全监督站的网站网站设计 分辨率
  • 途牛网站建设方案wordpress二次元主体
  • 素材免费网站化妆品企业网站源码
  • 网站拥有者查询公司做网站需要准备哪些资料
  • 虚拟网站多少钱哪个网站上做自媒体最好
  • 网站转化率排名深圳高端网站制作费用
  • 谈谈网站建设会有哪些问题众筹插件+wordpress
  • 网站建设与网页设计专业的易语言怎么做网页网站
  • 智慧养老网站开发seo经理