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

织梦网站模板怎么做公司网站推广技巧

织梦网站模板怎么做,公司网站推广技巧,打鱼在线游戏网站建设,网站流量被黑Java 集合类是用于存储和操作数据的核心工具,主要分为Collection和Map两大接口体系,每个接口下有多种实现类。以下是 Java 集合类的完整介绍: 一、集合框架核心接口 1. Collection 接口 集合体系的根接口,定义了添加、删除、遍…

Java 集合类是用于存储和操作数据的核心工具,主要分为Collection和Map两大接口体系,每个接口下有多种实现类。以下是 Java 集合类的完整介绍:

一、集合框架核心接口

1. Collection 接口

集合体系的根接口,定义了添加、删除、遍历等基本操作

三个主要子接口:

  • List:有序、可重复元素的集合,支持索引访问
  • Set:唯一元素集合,不允许重复值
  • Queue:按特定顺序(如 FIFO)处理元素的集合

2. Map 接口

以键值对(Key-Value)形式存储数据,键唯一

二、常用集合类及其特点

1. List 实现类

类名特点
ArrayList基于动态数组实现,随机访问高效,中间位置增删效率低
LinkedList基于双向链表实现,增删效率高,随机访问效率低
Vector线程安全,性能低于 ArrayList,已逐渐被淘汰

2. Set 实现类

类名特点
HashSet基于哈希表(底层为 HashMap),不保证元素顺序
LinkedHashSet继承 HashSet,用链表维护插入顺序,插入和访问顺序一致
TreeSet基于红黑树实现,元素自然排序或按比较器排序

3. Queue 实现类

类名特点
LinkedList实现 Deque 接口,可作为双向队列使用
PriorityQueue基于堆结构,按优先级排序,不允许 null 元素
ArrayDeque基于数组的双端队列,不允许 null 元素

4. Map 实现类

类名特点
HashMap基于哈希表,不保证顺序,允许键值为 null
LinkedHashMap继承 HashMap,用链表维护插入顺序或访问顺序
TreeMap基于红黑树,按键排序,不允许键为 null
Hashtable线程安全,性能低于 HashMap,不允许键值为 null

三、线程安全的集合类

  • 同步包装类

通过Collections.synchronizedXXX()转换非线程安全集合:

List<String> syncList = Collections.synchronizedList(new ArrayList<>());
  • 并发集合类(java.util.concurrent 包)

ConcurrentHashMap:分段锁实现的线程安全 HashMap,性能优于 Hashtable
CopyOnWriteArrayList:写操作时创建副本的线程安全 ArrayList

四、集合常用操作示例

import java.util.*;public class CollectionExample {public static void main(String[] args) {// List操作List<String> list = new ArrayList<>();list.add("apple");list.add("banana");System.out.println(list.get(0)); // 输出: apple// Set操作Set<Integer> set = new HashSet<>();set.add(1);set.add(2);System.out.println(set.contains(1)); // 输出: true// Map操作Map<String, Integer> map = new HashMap<>();map.put("one", 1);map.put("two", 2);System.out.println(map.get("one")); // 输出: 1// 遍历集合for (String element : list) {System.out.println(element);}// Stream API过滤list.stream().filter(e -> e.startsWith("a")).forEach(System.out::println);}
}

五、字典(Map)遍历

1. 遍历键值对(EntrySet)

这是最高效的遍历方式,尤其适合需要同时访问键和值的场景。

Map<String, Integer> map = new HashMap<>();
map.put("apple", 1);
map.put("banana", 2);
map.put("cherry", 3);// 使用for-each循环遍历EntrySet
for (Map.Entry<String, Integer> entry : map.entrySet()) {System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue());
}// 使用Iterator(适合需要在遍历中删除元素的场景)
Iterator<Map.Entry<String, Integer>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {Map.Entry<String, Integer> entry = iterator.next();if (entry.getValue() == 2) {iterator.remove(); // 安全删除元素}
}

2. 单独遍历键(KeySet)

如果只需要访问键,可以使用这种方式。

// 使用for-each循环遍历键
for (String key : map.keySet()) {System.out.println("Key: " + key);// 如果需要值,可以通过map.get(key)获取,但效率稍低System.out.println("Value: " + map.get(key));
}// 使用Stream API(Java 8+)
map.keySet().stream().forEach(key -> System.out.println("Key: " + key));

3. 单独遍历值(Values)

若只需要访问值,可采用此方式。

// 使用for-each循环遍历值
for (Integer value : map.values()) {System.out.println("Value: " + value);
}
// 使用Stream API收集值到List
List<Integer> valuesList = new ArrayList<>(map.values());

六、集合选择原则

  • 有序可重复场景
    频繁随机访问:选ArrayList
    频繁增删操作:选LinkedList
  • 唯一元素场景
    不要求顺序:选HashSet
    需插入顺序:选LinkedHashSet
    需排序:选TreeSet
  • 键值对存储场景
    不要求顺序:选HashMap
    需排序:选TreeMap
  • 多线程环境
    优先使用ConcurrentHashMap、CopyOnWriteArrayList等并发集合类

七、注意事项

  • 迭代修改异常
    遍历集合时修改结构会触发ConcurrentModificationException,建议使用Iterator.remove()或for-each循环
  • 哈希方法重写
    HashMap和HashSet依赖hashCode()和equals(),自定义类需正确重写这两个方法
  • 性能优化
    ArrayList可指定初始容量减少扩容开销
    LinkedList随机访问需遍历链表,避免高频索引操作
http://www.dtcms.com/wzjs/71076.html

相关文章:

  • 做外贸怎么看外国网站海淀区seo搜索引擎优化企业
  • 做公司网站怎么推广郑州seo哪家好
  • 做有奖竞猜网站违法吗seo难不难
  • 如何在大学网站做宣传百度电话号码查询平台
  • 哪里找做网站的谷歌广告
  • 淘宝客网站都用什么做互联网广告公司
  • 重庆传媒公司前十名seo是什么意思 seo是什么职位
  • facebook做网站推广软文代写新闻稿
  • 景区网站建设原则成都移动seo
  • 南京做网站的公司排名公司品牌宣传
  • 使用wget对网站做镜像seo网络优化软件
  • 西昌手机网站精准营销的概念
  • 网站建设简称什么自己怎么做百度推广
  • 互联网行业前景如何温州网站优化推广方案
  • 如何为网站做面包屑导航百家号关键词排名
  • 淘宝网上购物平台江门关键词优化公司
  • 贵阳有哪些做网站的公司5000元做百度推广效果怎么样
  • 家庭nas可以做网站服务器湘潭网站设计
  • 七牛云加速WordPress武汉seo公司出 名
  • php程序员做企业网站品牌推广策略
  • 阿里去可以做几个网站怎么找网站
  • 做ppt找图片的网站石家庄谷歌seo
  • cnzz如何查询某个网站频道的流量磁力最好用的搜索引擎
  • 深圳高水平网站制作西安疫情最新消息1小时内
  • 杭州网站模板做seo推广公司
  • 网站建立基本流程百度热搜关键词
  • 外地公司做的网站能备案百度一下你就知道官网首页
  • 吉林做网站的公司网站上不去首页seo要怎么办
  • 2019做网站需要营业执照吗百度关键词优化怎么做
  • 网站功能项目报价网页做推广