博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
2020-09-06
阅读量:2289 次
发布时间:2019-05-09

本文共 2182 字,大约阅读时间需要 7 分钟。

一、Iterator和ListIterator的区别

Iterator:

    只能按次序从前往后遍历,只能读,

ListIterator
    1)允许我们向前、向后两个方向遍历 List;
    2)在遍历时可以修改List 的元素
    3)制定元素开始遍历

二、CopyOnWriteArrayList

CopyOnWriteArrayList

    写时复制:写操作的时候,把List复制一份做写操作,操作完复制回去
弱点:
    弱一致性
    浪费内存
    

三、HashMap和TreeMap

HashMap:

    没有顺序,key散列算法

TreeMap:

    保证顺序

四、comparable和comparator

comparable

comparator

public class User implements Comparable
{ @Override public int compareTo(User o) { return this.age - o.age; } private int age ; private String name ; public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; }}public class User2 { private int age ; private String name ; public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; }}public class UserComparator implements Comparator
{ @Override public int compare(User2 o1, User2 o2) { return o1.getAge()-o2.getAge(); }}public class CompareTest { public static void main(String[] args) { try{ TreeSet
treeSet1 = new TreeSet
(); User user1 = new User(); user1.setAge(10); user1.setName("name_10"); User user2 = new User(); user2.setAge(20); user2.setName("name_20"); User user3 = new User(); user3.setAge(9); user3.setName("name_9"); treeSet1.add(user1); treeSet1.add(user2); treeSet1.add(user3); TreeSet
treeSet2 = new TreeSet
(new UserComparator()); User2 user21 = new User2(); user21.setAge(10); user21.setName("name_10"); User2 user22 = new User2(); user22.setAge(20); user22.setName("name_20"); User2 user23 = new User2(); user23.setAge(9); user23.setName("name_9"); treeSet2.add(user21); treeSet2.add(user22); treeSet2.add(user23); String d = null; }catch (Exception e){ e.printStackTrace(); } }}

 

转载地址:http://mfbnb.baihongyu.com/

你可能感兴趣的文章
sleeping-to-save-cpu
查看>>
键盘符号英语读法
查看>>
[转]char_traits
查看>>
[转载] 人生三重境界
查看>>
[转载]学习时注意思考方法
查看>>
C10K问题
查看>>
STL 线程安全性
查看>>
Writing Reentrant and Thread-Safe Code(编写可重入和线程安全的代码)
查看>>
可重入性
查看>>
无闪烁刷屏技术的实现
查看>>
Crazybit开发手记(一):设计之数据结构和算法的分离
查看>>
Windows消息
查看>>
Windows线程及同步机制
查看>>
CImage类
查看>>
FreeMind 0.80 正式版已经出来了
查看>>
虚拟化技术比较 PV HVM
查看>>
无法捕获的C++异常
查看>>
一台机器配置多个ip地址时被动响应和主动发起的源ip选择
查看>>
E1,T1, PRI, Trunk
查看>>
Top的VIRT是什么
查看>>