java容器一些知识
来源:互联网 发布:软件定制开发流程 编辑:程序博客网 时间:2024/06/05 14:20
1.java关于集合(list,set,map)的遍历与增强for循环的使用(包括iterator、for的传统遍历、增强遍历 )
www.xuebuyuan.com/1659025.html
map的遍历不能直接用Iterator遍历,需要先将key放到set视图中,list,set可以使用iterator、for遍历
2.Arrays此类包含用来操作数组(比如排序和搜索)的各种方法。此类还包含一个允许将数组作为列表来查看的静态工厂。(很有用,可以把list,set转换为数组,然后在用此方法操作)
底层实现是:采用iterator遍历后再放入数组中
3.ArrayDeque接口的大小可变数组的实现。数组双端队列没有容量限制;它们可根据需要增加以支持使用,禁止 null 元素。此类很可能在用作堆栈时快于 Stack,在用作队列时快于 LinkedList。
4.HashMap 允许使用null键、null值,HashMap 的实例有两个参数影响其性能:初始容量 和加载因子。容量 是哈希表中桶的数量,初始容量只是哈希表在创建时的容量。加载因子 是哈希表在其容量自动增加之前可以达到多满的一种尺度。
map中的键不能重复,若有重复的键,则后面的值会将前面的值进行覆盖。HashMap不是线程安全的,HashTable是线程安全的。
HashTable存值的时候不允许key、value为null。
5.properties:Properties 类表示了一个持久的属性集。Properties 可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。尽量使用setProperty,getProperty设值、取值
调用方法store、storeXml将属性值写入属性文件,调用load读取属性文件中的。
可使用类路径加载文件,load(类.class.getResourceAsStream(指定的文件名)) "/"表示根目论
load(Thread.currentThread().getContextClassLoader().getResourceAsStream(指定的文件名)) ""表示根目录,不需要加"/"
6.<import resource=""/> spring中引用资源
7.java的引用分类,对象的强、软、弱和虚引用
强引用(StrongReference) :gc(Garbage Collection)运行时不回收,指的是A a = new A()
软引用(SoftReference) :gc运行时可能回收(jvm内存不够)
弱引用(WeakReference) :gc运行时立即回收
虚引用(PhantomReference)类似不引用,不能单独使用,需要与引用队列联合使用
8.String str = new String("hello world");
//弱引用管理对象
WeakReference<String> ref = new WeakReference<>(str);
//断开引用后,表明是垃圾对象
str = null;
//运行垃圾回收器
System.gc();
9. (System很重要)在 System 类提供的设施中,有标准输入、标准输出和错误输出流;对外部定义的属性和环境变量的访问;加载文件和库的方法;还有快速复制数组的一部分的实用方法。
10.WeakHashMap以弱键 实现的基于哈希表的 Map。在 WeakHashMap 中,当某个键不再正常使用时,将自动移除其条目。
11.WeakHashMap的用途:可以作为简单缓存表的解决方案,当系统内存不够的时候,垃圾收集器会自动的清除没有在其他任何地方被引用的键值对。
12.hashMap比较的是键的hashCode与equeal,因为键是唯一的,而不同的键可能有相同的值
13.IdentityHashMap比较的是键的地址,并不比较hashCode与equal,键以地址去重
14.Collections(很有用) 此类完全由在 collection 上进行操作或返回 collection 的静态方法组成。它包含在 collection 上操作的多态算法,即“包装器”,包装器返回由指定 collection 支持的新 collection,以及少数其他内容。
使用Collections.synchronizedXXX()等可把list、map、set变为线程安全的
15.容器只读控制
(1)获得空列表的类型安全方式 Collections. emptyList()
(2)只包含一个元素,若超过一个元素则报错,Collections.singletonList()
(3)返回指定列表的不可修改视图。Collections.unmodifiableList()
16.多使用工具类,避免写 重复的代码。
jar包就是由一组字节码文件组成的,java的类库
17.Guava工程包含了若干被Google的 Java项目广泛依赖 的核心库
www.cnblogs.com/peida/archive/2013/06/08/3120820.html
18.collections在java中的常见用法
blog.sina.com.cn/s/blog_a46817ff01017hqr.html
www.xuebuyuan.com/1659025.html
map的遍历不能直接用Iterator遍历,需要先将key放到set视图中,list,set可以使用iterator、for遍历
2.Arrays此类包含用来操作数组(比如排序和搜索)的各种方法。此类还包含一个允许将数组作为列表来查看的静态工厂。(很有用,可以把list,set转换为数组,然后在用此方法操作)
底层实现是:采用iterator遍历后再放入数组中
3.ArrayDeque接口的大小可变数组的实现。数组双端队列没有容量限制;它们可根据需要增加以支持使用,禁止 null 元素。此类很可能在用作堆栈时快于 Stack,在用作队列时快于 LinkedList。
4.HashMap 允许使用null键、null值,HashMap 的实例有两个参数影响其性能:初始容量 和加载因子。容量 是哈希表中桶的数量,初始容量只是哈希表在创建时的容量。加载因子 是哈希表在其容量自动增加之前可以达到多满的一种尺度。
map中的键不能重复,若有重复的键,则后面的值会将前面的值进行覆盖。HashMap不是线程安全的,HashTable是线程安全的。
HashTable存值的时候不允许key、value为null。
5.properties:Properties 类表示了一个持久的属性集。Properties 可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。尽量使用setProperty,getProperty设值、取值
调用方法store、storeXml将属性值写入属性文件,调用load读取属性文件中的。
可使用类路径加载文件,load(类.class.getResourceAsStream(指定的文件名)) "/"表示根目论
load(Thread.currentThread().getContextClassLoader().getResourceAsStream(指定的文件名)) ""表示根目录,不需要加"/"
6.<import resource=""/> spring中引用资源
7.java的引用分类,对象的强、软、弱和虚引用
强引用(StrongReference) :gc(Garbage Collection)运行时不回收,指的是A a = new A()
软引用(SoftReference) :gc运行时可能回收(jvm内存不够)
弱引用(WeakReference) :gc运行时立即回收
虚引用(PhantomReference)类似不引用,不能单独使用,需要与引用队列联合使用
8.String str = new String("hello world");
//弱引用管理对象
WeakReference<String> ref = new WeakReference<>(str);
//断开引用后,表明是垃圾对象
str = null;
//运行垃圾回收器
System.gc();
9. (System很重要)在 System 类提供的设施中,有标准输入、标准输出和错误输出流;对外部定义的属性和环境变量的访问;加载文件和库的方法;还有快速复制数组的一部分的实用方法。
10.WeakHashMap以弱键 实现的基于哈希表的 Map。在 WeakHashMap 中,当某个键不再正常使用时,将自动移除其条目。
11.WeakHashMap的用途:可以作为简单缓存表的解决方案,当系统内存不够的时候,垃圾收集器会自动的清除没有在其他任何地方被引用的键值对。
12.hashMap比较的是键的hashCode与equeal,因为键是唯一的,而不同的键可能有相同的值
13.IdentityHashMap比较的是键的地址,并不比较hashCode与equal,键以地址去重
14.Collections(很有用) 此类完全由在 collection 上进行操作或返回 collection 的静态方法组成。它包含在 collection 上操作的多态算法,即“包装器”,包装器返回由指定 collection 支持的新 collection,以及少数其他内容。
使用Collections.synchronizedXXX()等可把list、map、set变为线程安全的
15.容器只读控制
(1)获得空列表的类型安全方式 Collections. emptyList()
(2)只包含一个元素,若超过一个元素则报错,Collections.singletonList()
(3)返回指定列表的不可修改视图。Collections.unmodifiableList()
16.多使用工具类,避免写 重复的代码。
jar包就是由一组字节码文件组成的,java的类库
17.Guava工程包含了若干被Google的 Java项目广泛依赖 的核心库
www.cnblogs.com/peida/archive/2013/06/08/3120820.html
18.collections在java中的常见用法
blog.sina.com.cn/s/blog_a46817ff01017hqr.html
0 0
- java容器一些知识
- Java 的容器类知识
- Java容器框架知识梳理
- 一些java入门知识
- 一些java的知识
- 一些java知识
- java 的一些知识
- 一些有意思Java知识
- Java一些辅助知识
- 一些java的知识
- 一些Java细节知识
- java网络一些知识
- java多线程一些知识
- 一些java入门知识
- Java知识整理——容器
- Java 容器知识整理 Map List
- Java 容器相关知识全面总结
- Java 容器相关知识全面总结
- 邮箱软件配置
- 前端性能优化----yahoo前端性能团队总结的35条黄金定律
- Java调用bat批处理文件动态传参问题
- 浏览器探究 - HTML5规范之Application Cache(1)
- iOS手机摄像头测心率
- java容器一些知识
- 深度学习中 Batch Normalization为什么效果好?
- C/C++ 中头文件相互包含引发的问题
- 每天一条linux命令---sercureCRT
- 独家分享泛媒体平台
- Ubuntu16.04安装RTL8723bu无线网卡驱动
- 函数main_loop和u-boot命令执行
- C++11中万能的可调用类型声明std::function<...>
- 线程的生命周期