Summary of Interfaces(接口的总结)

本文深入探讨了Java集合框架中的核心接口,包括Collection、Set、List、Queue等,以及它们在不同场景下的应用。同时介绍了Map接口及其子接口SortedMap的功能,展示了如何独立操作集合而不依赖其具体实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

The core collection interfaces are the foundation of the Java Collections Framework.

The Java Collections Framework hierarchy consists of two distinct interface trees:

  • The first tree starts with the Collection interface, which provides for the basic functionality used by all collections, such as add and remove methods. Its subinterfaces — SetList, and Queue — provide for more specialized collections.
  • The Set interface does not allow duplicate elements. This can be useful for storing collections such as a deck of cards or student records. The Set interface has a subinterface, SortedSet, that provides for ordering of elements in the set.

  • The List interface provides for an ordered collection, for situations in which you need precise control over where each element is inserted. You can retrieve elements from a List by their exact position.

  • The Queue interface enables additional insertion, extraction, and inspection operations. Elements in a Queue are typically ordered in on a FIFO basis.

  • The Deque interface enables insertion, deletion, and inspection operations at both the ends. Elements in a Deque can be used in both LIFO and FIFO.

  • The second tree starts with the Map interface, which maps keys and values similar to a Hashtable.

  • Map's subinterface, SortedMap, maintains its key-value pairs in ascending order or in an order specified by aComparator.

These interfaces allow collections to be manipulated independently of the details of their representation.

xiaofeiyu@xiaofeiyu-virtual-machine:~/桌面/task$ rm -rf build/ install/ log/ xiaofeiyu@xiaofeiyu-virtual-machine:~/桌面/task$ colcon build --packages-select interfaces --symlink-install Starting >>> interfaces --- stderr: interfaces CMake Error at /opt/ros/humble/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:240 (list): list index: 1 out of range (-1, 0) Call Stack (most recent call first): CMakeLists.txt:9 (rosidl_generate_interfaces) CMake Error at /opt/ros/humble/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:240 (list): list index: 1 out of range (-1, 0) Call Stack (most recent call first): CMakeLists.txt:9 (rosidl_generate_interfaces) CMake Error at /opt/ros/humble/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:240 (list): list index: 1 out of range (-1, 0) Call Stack (most recent call first): CMakeLists.txt:9 (rosidl_generate_interfaces) CMake Error at /opt/ros/humble/share/rosidl_generator_c/cmake/rosidl_generator_c_generate_interfaces.cmake:69 (message): Target dependency '/task/build/interfaces/rosidl_adapter/interfaces/msg/Armor.idl' does not exist Call Stack (most recent call first): /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include) /opt/ros/humble/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:286 (ament_execute_extensions) CMakeLists.txt:9 (rosidl_generate_interfaces) --- Failed <<< interfaces [0.70s, exited with code 1] Summary: 0 packages finished [0.91s] 1 package failed: interfaces 1 package had stderr output: interfaces
最新发布
07-24
a1@1:~/桌面/n10p$ colcon build Starting >>> lslidar_msgs --- stderr: lslidar_msgs CMake Error at /opt/ros/humble/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:240 (list): list index: 1 out of range (-1, 0) Call Stack (most recent call first): CMakeLists.txt:30 (rosidl_generate_interfaces) CMake Error at /opt/ros/humble/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:240 (list): list index: 1 out of range (-1, 0) Call Stack (most recent call first): CMakeLists.txt:30 (rosidl_generate_interfaces) CMake Error at /opt/ros/humble/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:240 (list): list index: 1 out of range (-1, 0) Call Stack (most recent call first): CMakeLists.txt:30 (rosidl_generate_interfaces) CMake Error at /opt/ros/humble/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:240 (list): list index: 1 out of range (-1, 0) Call Stack (most recent call first): CMakeLists.txt:30 (rosidl_generate_interfaces) CMake Error at /opt/ros/humble/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:240 (list): list index: 1 out of range (-1, 0) Call Stack (most recent call first): CMakeLists.txt:30 (rosidl_generate_interfaces) CMake Error at /opt/ros/humble/share/rosidl_generator_c/cmake/rosidl_generator_c_generate_interfaces.cmake:69 (message): Target dependency '/n10p/build/lslidar_msgs/rosidl_adapter/lslidar_msgs/msg/LslidarDifop.idl' does not exist Call Stack (most recent call first): /opt/ros/humble/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include) /opt/ros/humble/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:286 (ament_execute_extensions) CMakeLists.txt:30 (rosidl_generate_interfaces) --- Failed <<< lslidar_msgs [14.2s, exited with code 1] Summary: 0 packages finished [19.5s] 1 package failed: lslidar_msgs 1 package had stderr output: lslidar_msgs 1 package not processed
07-23
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值