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

宁波市环境建设保护局网站全球旅游网站排名

宁波市环境建设保护局网站,全球旅游网站排名,茌平县建设局网站,wordpress折叠菜单引言 在 Java 编程中,集合是一个非常重要的概念。它就像是一个容器,能够存储多个数据元素,帮助我们更方便地管理和操作数据。Java 集合框架主要分为单列集合和双列集合两大类,它们各自有着独特的特点和适用场景。接下来&#xff0…

引言

        在 Java 编程中,集合是一个非常重要的概念。它就像是一个容器,能够存储多个数据元素,帮助我们更方便地管理和操作数据。Java 集合框架主要分为单列集合和双列集合两大类,它们各自有着独特的特点和适用场景。接下来,让我们深入探究这两种集合。

单列集合

单列集合就像是一列整齐排列的数据队伍,每个元素都是独立的个体,按照一定的规则存储和组织。在 Java 中,单列集合的根接口是 java.util.Collection,它派生了多个子接口和实现类。

1. List 接口

List 接口的特点是元素有序且可重复。这意味着我们可以通过索引来访问集合中的元素,就像在书架上按照编号查找书籍一样。常见的 List 实现类有 ArrayList 和 LinkedList

ArrayList

ArrayList 基于数组实现,它在内存中是连续存储的。这使得它在随机访问元素时非常高效,就像在一本装订好的书中快速翻到指定页码一样。以下是一个简单的示例:

import java.util.ArrayList;
import java.util.List;public class ArrayListExample {public static void main(String[] args) {List<String> list = new ArrayList<>();list.add("apple");list.add("banana");list.add("cherry");System.out.println(list.get(1)); // 输出: banana}
}

不过,ArrayList 在插入和删除元素时可能会比较低效,因为需要移动后续的元素。

LinkedList

LinkedList 基于链表实现,元素之间通过引用相互连接。这使得它在插入和删除元素时非常高效,就像在一列火车中添加或移除车厢一样。但随机访问元素时效率较低,因为需要从头开始遍历链表。示例如下:

import java.util.LinkedList;
import java.util.List;public class LinkedListExample {public static void main(String[] args) {List<String> list = new LinkedList<>();list.add("apple");list.add("banana");list.add("cherry");list.add(1, "date");System.out.println(list); // 输出: [apple, date, banana, cherry]}
}

2. Set 接口

Set 接口的特点是元素无序且不可重复。这就好比一个装满不同颜色气球的袋子,每个气球都是独一无二的,并且没有固定的排列顺序。常见的 Set 实现类有 HashSet 和 TreeSet

HashSet

HashSet 基于哈希表实现,它通过哈希值来存储和查找元素。这使得它在添加、删除和查找元素时具有较高的效率。示例如下:

import java.util.HashSet;
import java.util.Set;public class HashSetExample {public static void main(String[] args) {Set<String> set = new HashSet<>();set.add("apple");set.add("banana");set.add("apple"); // 重复元素,不会被添加System.out.println(set); // 输出: [apple, banana]}
}
TreeSet

TreeSet 基于红黑树实现,它可以对元素进行排序。这就像一个按照字母顺序排列的字典,方便我们查找和比较元素。示例如下:

import java.util.TreeSet;
import java.util.Set;public class TreeSetExample {public static void main(String[] args) {Set<Integer> set = new TreeSet<>();set.add(3);set.add(1);set.add(2);System.out.println(set); // 输出: [1, 2, 3]}
}

双列集合

双列集合就像是一个表格,每一行都包含两个部分:键(Key)和值(Value)。键是唯一的,就像表格的索引,通过键可以快速找到对应的值。在 Java 中,双列集合的根接口是 java.util.Map

1. HashMap

HashMap 基于哈希表实现,它通过键的哈希值来存储和查找元素。这使得它在添加、删除和查找元素时具有较高的效率。示例如下:

import java.util.HashMap;
import java.util.Map;public class HashMapExample {public static void main(String[] args) {Map<String, Integer> map = new HashMap<>();map.put("apple", 1);map.put("banana", 2);map.put("cherry", 3);System.out.println(map.get("banana")); // 输出: 2}
}

需要注意的是,HashMap 不保证元素的顺序。

2. TreeMap

TreeMap 基于红黑树实现,它可以根据键的自然顺序或指定的比较器对元素进行排序。这就像一个按照字母顺序排列的电话簿,方便我们查找和比较元素。示例如下:

import java.util.TreeMap;
import java.util.Map;public class TreeMapExample {public static void main(String[] args) {Map<String, Integer> map = new TreeMap<>();map.put("banana", 2);map.put("apple", 1);map.put("cherry", 3);System.out.println(map); // 输出: {apple=1, banana=2, cherry=3}}
}

3. LinkedHashMap

LinkedHashMap 是 HashMap 的子类,它不仅具有 HashMap 的高效性,还能保持元素的插入顺序。示例如下:

import java.util.LinkedHashMap;
import java.util.Map;public class LinkedHashMapExample {public static void main(String[] args) {Map<String, Integer> map = new LinkedHashMap<>();map.put("banana", 2);map.put("apple", 1);map.put("cherry", 3);System.out.println(map); // 输出: {banana=2, apple=1, cherry=3}}
}

文章转载自:

http://SS4Tufid.Lrwsk.cn
http://5MyKeWeW.Lrwsk.cn
http://2XCoh9we.Lrwsk.cn
http://AWeDoPV5.Lrwsk.cn
http://hs4D6DU6.Lrwsk.cn
http://fgah7yrm.Lrwsk.cn
http://U8Av4GN6.Lrwsk.cn
http://oZiTqB7t.Lrwsk.cn
http://otQg6HHZ.Lrwsk.cn
http://p8UHIVdT.Lrwsk.cn
http://J4qne45h.Lrwsk.cn
http://BuJPARkS.Lrwsk.cn
http://vzPPqmwv.Lrwsk.cn
http://sGmUNdq1.Lrwsk.cn
http://yEapSS7Y.Lrwsk.cn
http://JC6R2ArS.Lrwsk.cn
http://oCKRzHKa.Lrwsk.cn
http://ZYXWT25y.Lrwsk.cn
http://CZiZapJB.Lrwsk.cn
http://8L3029dv.Lrwsk.cn
http://Cpw15ASu.Lrwsk.cn
http://H25LvTyC.Lrwsk.cn
http://dpm7FJt8.Lrwsk.cn
http://LbjsV1st.Lrwsk.cn
http://43UEnNX7.Lrwsk.cn
http://ua3T3rQl.Lrwsk.cn
http://J0llV7N7.Lrwsk.cn
http://MoXSUq2N.Lrwsk.cn
http://rmc0p65x.Lrwsk.cn
http://0iJkM7Vd.Lrwsk.cn
http://www.dtcms.com/wzjs/691019.html

相关文章:

  • 响应式网站的宽度微信推广平台
  • 两个域名同一个网站做优化泉州网站建设多少钱
  • 营销型网站建设域名wordpress保存php失败
  • 帝国网站认证码免费下载app并安装
  • 网站怎么做需要花钱吗十大传媒公司排名
  • 建站平台 在线提交表格功能门户网站建设工具
  • seo优化网站快速排名建站快车管理
  • 建设储蓄卡网站怎么建立自己的网站域名
  • 建设局网站投诉网站建设的实施制作阶段包括
  • 企业网站推广外包合肥浦发建设集团网站
  • 形象类网站网站总体设计怎么写
  • 上海公司牌照价格走势seo顾问服务 乐云践新专家
  • 山东网站建设哪里有广州市公司网站建设报价
  • 服装网站建设图南京网站建设 w
  • 金融网站建设报价方案江西建设职业技术学院最新官方网站
  • 手机网站开发库网站建设分析
  • 行业网站运营制作书签图片
  • 秦皇岛庆云网站建设做网站的是什么工程师
  • 自己建立网站用什么软件备案成功后怎么建网站
  • 做彩票生意要登陆哪个网站沈阳建设局网站首页
  • 做非法网站的有没有优化品牌seo关键词
  • 物流行业网站建设市场分析无锡百度关键词优化
  • 公司宣传网站制作企业首页网站属于什么类型网站
  • 06627网页制作与网站建设wordpress工作机制
  • 上海哪家做公司网站有的网站在浏览器打不开怎么办
  • 数码产品商城网站建设vc 做网站源码
  • 大理高端网站建设网站推广是什么
  • 如皋网站制作企业网站建设的文献
  • 超值的扬中网站建设做网站在哪里做比较好
  • dede发布网站烟台网架公司