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

Java 基础教学:高级特性与实战-集合框架

Java 集合框架提供了一套性能优良、使用方便的接口和类,用于存储和操作群组数据。最常用的集合接口有 ListSetMap

List

List 接口可以存储一系列有序的元素,并且可以包含重复的元素。List 的实现类常用的有 ArrayListLinkedList

ArrayList

ArrayListList 接口的大小可变数组的实现。它允许随机快速访问元素。

示例:使用 ArrayList
import java.util.ArrayList;
import java.util.List;public class ListExample {public static void main(String[] args) {List<String> fruits = new ArrayList<>();fruits.add("Apple");fruits.add("Banana");fruits.add("Cherry");fruits.add("Banana");for (String fruit : fruits) {System.out.println(fruit);}}
}

LinkedList

LinkedListList 接口的链表实现。相对于 ArrayList,它在列表中间插入或删除元素时更高效。

示例:使用 LinkedList
import java.util.LinkedList;
import java.util.List;public class LinkedListExample {public static void main(String[] args) {List<String> animals = new LinkedList<>();animals.add("Dog");animals.add("Cat");animals.add("Horse");for (String animal : animals) {System.out.println(animal);}}
}

Set

Set 接口定义了一个不能包含重复元素的集合。Set 的实现类常用的有 HashSetTreeSet

HashSet

HashSet 是基于 HashMap 实现的,它不保证集合的迭代顺序;特别是,它不保证该顺序恒久不变。

示例:使用 HashSet
import java.util.HashSet;
import java.util.Set;public class SetExample {public static void main(String[] args) {Set<String> cities = new HashSet<>();cities.add("New York");cities.add("London");cities.add("Paris");cities.add("New York");for (String city : cities) {System.out.println(city);}}
}

TreeSet

TreeSet 是基于 TreeMap 实现的,元素被排序存储。

示例:使用 TreeSet
import java.util.Set;
import java.util.TreeSet;public class TreeSetExample {public static void main(String[] args) {Set<String> treeSet = new TreeSet<>();treeSet.add("Orange");treeSet.add("Apple");treeSet.add("Banana");for (String fruit : treeSet) {System.out.println(fruit);}}
}

Map

Map 接口定义了一个从键映射到值的对象。Map 不能包含重复的键;每个键最多只能映射到一个值。Map 的实现类常用的有 HashMapTreeMap

HashMap

HashMap 是基于哈希表的 Map 接口实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。

示例:使用 HashMap
import java.util.HashMap;
import java.util.Map;public class MapExample {public static void main(String[] args) {Map<String, Integer> map = new HashMap<>();map.put("Alice", 30);map.put("Bob", 25);map.put("Charlie", 35);for (Map.Entry<String, Integer> entry : map.entrySet()) {System.out.println(entry.getKey() + ": " + entry.getValue());}}
}

TreeMap

TreeMap 是基于红黑树的 NavigableMap 实现。此类保证映射按照键的升序排序。

示例:使用 TreeMap
import java.util.Map;
import java.util.TreeMap;public class TreeMapExample {public static void main(String[] args) {Map<String, Integer> treeMap = new TreeMap<>();treeMap.put("Alice", 30);treeMap.put("Charlie", 35);treeMap.put("Bob", 25);for (Map.Entry<String, Integer> entry : treeMap.entrySet()) {System.out.println(entry.getKey() + ": " + entry.getValue());}}
}

总结

Java 集合框架提供了一组丰富的类和接口,用于在应用程序中高效地管理数据集合。ListSetMap 是最基本的集合类型,每种类型都有不同的特点和用途。了解何时使用哪种类型的集合以及如何正确地使用它们,对于编写高效、易于维护的 Java 程序至关重要。

http://www.lryc.cn/news/477483.html

相关文章:

  • 单片机原理及应用笔记:C51数组与项目实践
  • 综合项目--博客
  • ARM64的Mac Node.js前置工作,nvm在线安装
  • C++《list的模拟实现》
  • Kubernetes的概述与架构
  • Elasticsearch实战应用:构建高效的全文搜索引擎
  • 达梦数据库和人大金仓数据库对数据库的运行查看情况
  • Spring Boot解决 406 错误之返回对象缺少Getter/Setter方法引发的问题
  • Automa入门教程详解(Automa工作流概述)
  • Python并发编程库:Asyncio的异步编程实战
  • vueui vxe-form 分享实现表单项的联动禁用,配置式表单方式的用法
  • 供应SW1655集成功率管的高频率、高性能同步整流
  • 电动机出现故障后怎么处理?
  • 练习LabVIEW第四十题
  • 蓝牙BLE开发——红米手机无法搜索蓝牙设备?
  • UE5.4 PCG Layered Biomes插件
  • 搭建你的私人云盘:使用File Browser与cpolar实现公网传输文件
  • QT/QT QUICK与前端WEB开发的区别
  • Python+Playwright(Nuitka、Pyinstaller打包)
  • 2024年前三季度币安、OKX等五大交易所上币表现分析
  • Go语言sync.WaitGroup与errgroup.Group用法详解
  • 【大数据学习 | kafka】kafka的ack和一致性
  • 学习虚幻C++开发日志——定时器
  • 问政浔川(1)—— 有了浔川社团官方联合会和社团官方,那么浔川总社部是干什么的呢?
  • 区块链技术应用--电子签章(模块三)
  • 多面体定义+多面体是凸集+多面体的重要性质
  • 为什么 Allow 配合 meta noindex 比使用Disallow好?
  • 通讯学徒学习日记
  • 迪杰斯特拉算法
  • IPsec传输模式与隧道模式的深度解析及应用实例