可导航的Map和集合 NavigableMap and NavigableSet Java集合框架(Java Collections Framework)加入了一个新的NavigableMap和NavigableSet接口。分别的扩展了SortedMap和SortedSet接口,本质上添加了搜索选项到接口。 NavigableMap接口 对于NavigableMap,有3个方法的集合。其中一个方法集合用于获取子Map,另一个集合用于获取Map Entity,最后一个用于设置Map键关联的工作。 在 第一个集合中存在3个方法。首先,navigableHeadMap(toKey)返回一个包含所有的键的NavigableMap,但是不包括 toKey,有一个返回带有所有键的NavigableMap的方法navigableTailMap(fromKey),从fromKey开始的,一直 到最后一个键的内容。最后,是一个naviagbleSubMap(fromKey,toKey)方法,返回一NavigableMap,从 fromKey开始,结束于toKey(这里是一个半开半闭区间[startKey,endKey))。感官上,这些方法与SortedMap的 headMap()、tailMap()和subMap()方法相同,但是返回不一样的类型,而不是上面提到的NavigableMap。 这里的第二个方法的集合是和Map的键有关的。对于SortedMap,你有firstKey()和lastKey()来获取某个Map的边界键值。NavigableMap有一些获取键的其他方法:
第三个方法的集合可能是最有用的。当需要使用到SortedMap或者Map实例的时候,一般来说,你将获得键和获得对应的值。最后的方法的集合一般都是返回Map。实体实例取代了键。因此,你不必要去进行第二次查找操作。所以,这里有6个方法来操控第二个集合:
这里有两个单步从Map获取和删除实体的方法。提供了一个简单的不用使用迭代器而遍历所有Map元素的方法。下面是具体的介绍:
另外还有两个值得起到的NavigableMap方法:descendingKeySet()和descendingEntrySet()。keySet()和entrySet()返回的是升序的键的集合,而新的NavigableMap方法是以降序进行工作的。 在Java 6中,这里有两个NavigableMap接口的实现。旧的TreeMap被从NavigableMap中继承而不是原来的SortedMap。另外,一 个该接口的并发的版本现在可以在ConcurrentSkipListMap类中找到。可能你并不熟悉skiplist,它们是一种排序过的链接,使用了 并行链表提高了搜索的速度。但TreeMap的结构是平衡的,并且粗略的从链表中寻找一个键,ConcurrentSkipListMap一直都是从最前 面开始,但是由于副skip list的作用,搜索的效果很接近于二分查找。 下面是一个具体例子,仅供参考: import java.util.NavigableMap; public static void main(String[] args) { 输出结果: First key: aaa First entry: aaa=111 NavigableSet接口 NavigableSet 工作类似于NavigableMap,但是没有键值对。在NavigableMap中的3组方法,这里有其中的两组。你可以可以获取一个可导航的子集,带 有navigableHeadSet(toElement), navigableSubSet(fromElement, toElement), 和 navigableTailSet(E fromElement)方法。或者你可以获得特定的元素,通过ceiling(element), floor(element), higher(element), 和lower(element)方法。你也可以获取或删除元素,通过pollFirst()和pollLast()方法,升序的迭代 descendingIterator()补充了iterator()。 在表面之下,CouncurrentSkipListSet使用ConcurrentSkipListSet来完成所有的工作。
|
相关推荐
ubuntu安装FSL
1.下载fslinstaller.py 官网下载地址:https://fsl.fmrib.ox.ac.uk/fsldownloads_registration 或者去我的百度网盘取: 链接:https://pan.baidu.com/s/1d5eHm48oamFdYdKm84nifw 提取码:6ff9 2.将base环境改成python2.0版本 本来想在服务器安装,服务器没有sudo权限,网上很多教程都装不了,于是就自己安装虚拟机再装了一个ubuntu,然后安装了python2环境,再开始装fsl,fsl
SortedMap、NavigableMap、TreeMap介绍和使用
SortedMap接口:SortedMap是一个接口,继承自Map接口,它定义了对键值对按照键的自然顺序或自定义顺序进行排序的功能。SortedMap中的键值对是按照键的顺序排列的,因此可以根据键的顺序进行范围查找和遍历操作。SortedMap接口提供了一系列的导航方法和有序操作方法。 NavigableMap接口:NavigableMap是SortedMap接口的子接口,它在SortedMap的基础上增加了一些额外的导航方法,使得对有序键值对的操作更加方便和灵活。
C# OpenCV机器视觉:红外体温检测
阿强长舒一口气,脸上露出了自信的笑容:“好了,万事俱备,只欠东风,接下来就看我的了!在这热图像里,不同的颜色代表着不同的温度区域,就好比一幅用温度绘制的抽象画,红色通常表示高温,蓝色则代表低温,通过解读这幅画,就能大致了解物体表面的温度分布情况。” 阿强兴奋得一拍大腿,“这不就像是找到了隐藏在黑暗中的线索,只要顺着这些红外线的踪迹,就能揪出体温异常的潜在风险,守护大家的健康啦。带着这份坚定的信念,阿强又投入到新的科技研发中,他相信,只要大家齐心协力,用科技点亮希望之光,就一定能迎来更加美好的明天。
NavigableMap
1. NavigableMap 继承自 SortedMap,所以它的元素是有序的。 2. 在 SortedMap 基础上,支持快速搜索符合条件的最近的元素。这里条件主要是指lower(>),floor(>=),ceiling(<),higher(>)。 3. 支持逆序访问。descendingKeySet /descendingMap。 4. 支持获取子集合...
TMC步进电机驱动stealthChop
经过九九八十一难,芯片手册拜读了好多遍,找了好多资料,问了好多人使用TMC2660驱动步进电机终于成功了。最后的问题居然是硬件把管脚画错了,然后我又没有检查,哭。。。
WandB本地部署踩坑指南:从Docker启动到License更新的完整流程(附常见错误解决方案)
本文详细介绍了Weights & Biases(WandB)机器学习实验管理平台的本地化部署全流程,涵盖从Docker环境搭建、许可证管理到常见错误排查的实战经验。针对企业级应用场景,文章还提供了性能优化、高可用架构设计及开源替代方案Trackio的评估与迁移策略,为构建安全、可控的内部实验追踪平台提供完整解决方案。
Java中的Map【三】NavigableMap接口
所使用的jdk版本为1.8版本,先看一下NavigableMap<K,V>在JDK中Map的UML类图中的位置: 2.1.3NavigableMap接口 接口NavigableMap<K,V> extends SortedMap<K,V>,是一个扩展的SortedMap,在继承SortedMap接口的基础之上,扩展了一些返...
STM32F407+LWIP实战:NETCONN接口TCP服务器避坑指南(附正点原子例程解析)
本文深入解析了基于STM32F407和LWIP协议栈构建高响应TCP服务器的实战要点。针对使用NETCONN接口时常见的连接不稳定、数据延迟及内存泄漏等问题,提供了从NETCONN运行模型、服务器实现、参数优化到内存管理的全方位避坑指南,并结合正点原子例程,给出了具体的调试技巧与解决方案。
NavigableMap接口
NavigableMap接口第1部分 NavigableMap接口介绍第2部分 NavigableMap接口数据结构第3部分 NavigableMap接口源码解析(基于JDK-8u201) 第1部分 NavigableMap接口介绍 NavigableMap接口简介 1 2 NavigableMap接口常用API 修饰语和返回类型 方法 描述 Iterator<T> i...
2、集中式MIMO雷达研究进展:正交波形设计与信号处理
集中式多输入多输出(Multiple Input Multiple Output,MIMO)雷达通常利用正交波形增加发射波形 自由度,采用数字阵列拓展空间收发自由度,使得雷达接收机的天线孔径获得明显扩展,最终带来空间分辨率、 测角精确度、杂波抑制能力等大幅度提升。但是,这些性能提升的前提是发射波形具有正交特性。事实上,在 实际应用中,在不牺牲时域/频域资源情况下,受限于时宽带宽积,无法获得完全正交的波形集合,从而限制了 MIMO雷达系统性能。本文对集中式MIMO雷达正交波形复用的技术原理进行了系统回顾,分别
内部函数方式获取工序包容盒(最低点和最高点)PTHDSP_ask_box
内部函数方式获取工序包容盒(最低点和最高点)PTHDSP_ask_box。
Java NavigableMap接口总结 有序Map接口SortedMap接口的扩展
NavigableMap接口源码重点 NavigableMap接口继承自SortedMap接口,提供有序Map接口的扩展,提供了更为细致的导航方法,SortedMap源码可以看我这篇文章 SortedMap SortedMap接口继承自Map接口,所以NavigableMap接口也可以说是一种Map接口 NavigableMap接口提供了四类方法分别是 根据给定键key查找集合Map中的键 根据给定键key查找集合Map中的键值对Entry 获取集合Map中的键最小或最大的键值对 有序Map集合处理方法
射频微波电路设计【1.4】
AppCAD是一组射频设计工具和计算机应用说明,它使射频工程师能以更快和更容易的方式设计他们的产品。该软件的理 念是为工程师提供一个“个人设计助理”,即功能强大、快速和容易使用的辅助设计工具。该软件包括如下基本功能: ·各种传输线电气参数的分析与计算;·各种匹配电路的分析与计算;·各种有源和无源简单电路的分析与计算;·射频系统指标的计算:增益、噪声系数、三阶交调、信噪比、灵敏度等;·器件可靠性分析。
Java集合之NavigableMap与NavigableSet接口
author:lidx 本文接着上篇介绍SortedMap和SortedSet接口,介绍他们的扩展接口NavigableMap与NavigableSet接口, 提供了针对给定搜索目标返回最接近匹配项的导航方法。 SortedMap和SortedSet接口两个接口jdk1.2就已经提供,扩展的NavigableMap与NavigableSet接口jdk1.6才开始支持。 1....
Camera2Demo
在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作
假人有限元模型
假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用
如何使用Java 6的NavigableSet和NavigableMap
您可以使用最新的Java 6的Collection API来导航集合和Map集合。 这些API提供了很大的灵活性,可以从集合中查找所需的结果。 1. NavigableMap示例 package com.example.collection; import java.util.NavigableMap; import java.util.TreeMap; public class N...
Devexpress16.2.6破解工具
Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具
Core Java (二十四) SortedMap,NavigableMap,SortedSet,NavigableSet接口
SortedMap接口 根据比较器进行排序,是一个有序映射表。 ComparatorK> comparator() Returns the comparator used to order the keys in this map, or null if this map uses the natural ordering of its keys.
迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)
迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)
java.util.NavigableSet和NavigableMap
java.util.NavigableSet和NavigableMap
java 中具有导航(navigate)功能的接口(NavigableSet和NavigableMap)的使用说明和对比
java 中具有导航(navigate)功能的接口(NavigableSet和NavigableMap)的使用说明和对比
TreeSet、NavigableMap、NavigableSet源码
TreeSet是一个有序的Set集合。既然是有序,那么它是靠什么来维持顺序的呢,回忆一下TreeMap中是怎么比较两个key大小的,是通过一个比较器Comparator对不对,不过遗憾的是,今天仍然不会讲Comparator,但是需要明白的是TreeSet要实现信息也必须依靠于Comparator接口。 关于Set,在前面我们讲过一个HashSet,是不是想起了什么,Set和Map在java中是...
Java 集合中获取数据的前驱和后继元素
在 Java 中,如果需要获取某个数据的下一个或上一个数据,可以使用实现了 NavigableSet 或 NavigableMap 接口的集合,如 TreeSet 和 TreeMap,或者其线程安全的版本 ConcurrentSkipListSet 和 ConcurrentSkipListMap。对于实现了 List 接口的集合,可以通过 ListIterator 来获取前后元素。选择合适的集合取决于数据的类型、集合的排序需求以及是否需要线程安全。
scjp复习笔记(3)
Example 16: 在Java1.6中引入了许多新的接口,其中的两个是:java.util.NavigableSet和java.util.NavigableMap。 import java.util.*; public class Ferry { public s
4098



被折叠的 条评论
为什么被折叠?



