Javase高级编程笔记2

Javase高级编程
一、 集合
/**
集合与数组的比较:
长度:数组的长度固定,声明之后不可变
集合的长度,可以动态修改

	元素:数组可以存放基本数据类型和引用类型的元素
		  集合只能存放引用类型的元素
	
	内容:数组只能存放同一类型的元素
		  集合可以存放不同类型的元素
	
Colection集合接口下的两个子类
	Set:无序集合,不重复
	List:有序集合,可重复

*/

1、List类
/**
* ArrayList:
1.元素可以为空
2.数组
3.线性存储
4.查询效率更高,插入和删除的效率较低(注意特性)

*/

2、/**
LinkedList:
1.可以为空
2.底层结构:链表
3.链表存储
4.查询效率低,添加和删除的效率高(注意特性)
5.功能更多
*/

3、/**
set:
1.无序:元素输入和存储的顺序不一致
2.无重复:两个对象e1和e2,e1.equals(e2)返回值为true,则认为对象重复

	HashSet:
		底层结构:hash散列
 */

4、/**
* TreeSet:
底层为二叉树(红黑数)
* 存入跟储存的顺序不同
* 保存元素类型必须一致
*
*/

5、/**
Map:以键值对的形式保存键(Key)和值(Value)的映射关系

 	HashMap和TreeMap
 	数据结构:HashMap基于hash表
 			   TreeMap基于二叉树(红黑树)
 			
 	是否可以为空:HashMap允许 null值和null键
 			    TreeMap允许null值但不允许null键
 			  	 
 		
 	性能调优:
 		HashMap可以通过调节初始容量和负载因子进行调优
 		TreeMap无法进行调优,总是处于平衡状态

 */

拓展:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值