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

做网站哪些公司好云起时网站建设

做网站哪些公司好,云起时网站建设,深圳建站公司招聘,微网站的搭建流程目录 一、List接口及其实现类二、Set接口及其实现类三、Map接口及其实现类四、Queue/Deque队列五、Stack栈六、树形结构七、注意事项与最佳实践总结 一、List接口及其实现类 核心实现类 ArrayList:基于动态数组LinkedList:基于双向链表 常用操作方法…

目录

  • 一、List接口及其实现类
  • 二、Set接口及其实现类
  • 三、Map接口及其实现类
  • 四、Queue/Deque队列
  • 五、Stack栈
  • 六、树形结构
  • 七、注意事项与最佳实践
  • 总结

一、List接口及其实现类

核心实现类

  • ArrayList:基于动态数组
  • LinkedList:基于双向链表

常用操作方法

List<String> list = new ArrayList<>();// 增
list.add("元素");         // 末尾添加
list.add(0, "首位插入"); // 指定位置插入// 删
list.remove(0);         // 按索引删除
list.remove("元素");    // 按对象删除// 查
String element = list.get(0);       // 按索引获取
int index = list.indexOf("元素");   // 获取元素索引// 改
list.set(0, "新值");     // 修改指定位置// 遍历
for (String s : list) { /*...*/ }
list.forEach(System.out::println);

特点对比

  • ArrayList:随机访问O(1),插入删除O(n)
  • LinkedList:随机访问O(n),头尾操作O(1)

二、Set接口及其实现类

主要实现类

  • HashSet:无序存储
  • LinkedHashSet:保持插入顺序
  • TreeSet:自动排序

常用操作

Set<Integer> set = new HashSet<>();// 增
set.add(10);        // 成功返回true// 删
set.remove(10);     // 成功返回true// 查
boolean exists = set.contains(10);// 遍历
Iterator<Integer> it = set.iterator();
set.forEach(e -> System.out.println(e));

特殊方法

// TreeSet专属方法
TreeSet<Integer> sortedSet = new TreeSet<>();
sortedSet.first();        // 获取最小元素
sortedSet.tailSet(50);    // 获取≥50的子集

三、Map接口及其实现类

主要实现类

  • HashMap:快速查找
  • LinkedHashMap:保持插入顺序
  • TreeMap:键值排序

基础操作

Map<String, Integer> map = new HashMap<>();// 增/改
map.put("key", 100);      // 返回旧值或null// 删
map.remove("key");        // 返回被删值// 查
int value = map.get("key"); // 不存在返回null// 遍历
for (Map.Entry<String, Integer> entry : map.entrySet()) {entry.getKey();entry.getValue();
}

Java8+增强方法

map.getOrDefault("key", 0);     // 安全获取
map.putIfAbsent("key", 100);    // 不存在时插入
map.compute("key", (k,v) -> v+1); // 计算新值

四、Queue/Deque队列

常用实现类

  • LinkedList:双端队列
  • PriorityQueue:优先级队列

队列操作

Queue<String> queue = new LinkedList<>();// 入队
queue.offer("元素");     // 推荐使用
queue.add("元素");       // 可能抛异常// 出队
String head = queue.poll(); // 返回并移除头元素
String peek = queue.peek(); // 仅查看不移除

双端队列操作

Deque<String> deque = new ArrayDeque<>();
deque.offerFirst("头插");
deque.offerLast("尾插");
deque.pollFirst();
deque.pollLast();

五、Stack栈

推荐实现方式

Deque<Integer> stack = new ArrayDeque<>();// 入栈
stack.push(1);       // 等效addFirst()// 出栈
int top = stack.pop(); // 等效removeFirst()

六、树形结构

TreeMap特殊方法

TreeMap<Integer, String> treeMap = new TreeMap<>();// 范围查询
Map.Entry<Integer, String> lower = treeMap.lowerEntry(50); // 最大key<50的条目
SortedMap<Integer, String> subMap = treeMap.subMap(20, 80); // [20,80)区间

七、注意事项与最佳实践

  1. 线程安全

    • 多线程环境使用ConcurrentHashMapCopyOnWriteArrayList
    • Collections.synchronizedList()包装非线程安全集合
  2. 性能考量

    • 随机访问:优先ArrayList
    • 频繁插入删除:考虑LinkedList
    • 大数据量去重:使用HashSet
  3. 遍历删除陷阱

    // 错误方式:会抛ConcurrentModificationException
    for (String s : list) {if(s.equals("del")) list.remove(s);
    }// 正确方式:使用迭代器
    Iterator<String> it = list.iterator();
    while(it.hasNext()){if(it.next().equals("del")) it.remove();
    }
    
  4. 空值处理

    • HashMap允许null键/值
    • TreeMap不允许null键
    • ConcurrentHashMap完全禁止null
http://www.dtcms.com/a/405508.html

相关文章:

  • 网络营销与管理专业是干什么的旺道seo推广效果怎么样
  • 新彊生产建设兵团网站网站icp备案查询官网
  • 徐州市政建设集团公司网站西安推广公司无网不胜
  • 上海网站建设公司介绍网站建设投
  • 网站建设与运营市场风险邯郸信息港招聘信息
  • 西安公司注册网站网站建设 教案
  • 广州网站推广html网页设计作业成品代码免费下载
  • 建购物网站要多少钱重庆seo推广外包
  • 购物网站建设存在的问题哈尔滨建设集团
  • 兼职做海报网站wordpress mysql扩展
  • 公司网站建设的会计分录有效的网站推广方案
  • 手机商城网站建设江西网站开发科技公司
  • 上海的广告公司网站建设建设一个网站需要做哪些工作
  • 正版seo搜索引擎泉州seo用户体验
  • 来宾网站建设石家庄网站建设是什么意思
  • 织梦网站地图调用全站文章影城网站设计
  • 做影视免费网站违法吗设计师互动平台
  • 南京模板建站哪家好河北公司网站建设效果
  • 网页粒子效果网站.帮别人做网站
  • 杭州网站推广技巧网络优化有哪些主要流程
  • 网站空间格式asp网站建设设计解决方案
  • 公司网站建设考核东莞公司注册地址可以是住宅吗
  • 建设网站书怎么免费建设个人网站
  • 做暧暧免费网站网站备案名称重复
  • 简述网站的建设步骤电脑网站打不开怎么解决
  • 沈阳做网站 熊掌号景安网站备案幕布
  • 织梦网站建设培训怎么制作网站编辑页面
  • 网站专题页面怎么做从哪里设置网站关键词
  • asp.net动态的网站开发拖拽式wordpress建站
  • 药企做网站需要哪些手续wordpress伪静态结构