集合总结

博客主要总结了Collection集合的方法,如添加、删除、判断包含等操作,还对比了List与Set集合的区别,介绍了ArrayList、LinkedList等的特点,以及泛型、增强for的使用。此外,还给出了Map集合的两种遍历方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Collection总结

|- List 可以存储重复元素,有序的(元素存取顺序),有索引
		|- ArrayList
		|- LinkedList
	|- Set 不能存储重复元素,无序的(元素存取顺序,LinkedHashSet是有序的),无索引
	|- HashSet
			|- LinkedHashSet

Collection方法:

 boolean add(Object e) 把给定的对象添加到当前集合中
 void clear() 清空集合中所有的元素
 boolean remove(Object o) 把给定的对象在当前集合中删除
 boolean contains(Object o) 判断当前集合中是否包含给定的对象
 boolean isEmpty() 判断当前集合是否为空
 Iterator iterator() 迭代器,用来遍历集合中的元素的
 int size() 返回集合中元素的个数
 Object[] toArray() 把集合中的元素,存储到数组中
 Iterator : 迭代器
 Object next()返回迭代的下一个元素
 boolean hasNext()如果仍有元素可以迭代,则返回 true。
 List与Set集合的区别?

List:

			它是一个有序的集合(元素存与取的顺序相同)
			它可以存储重复的元素			

Set:

			它是一个无序的集合(元素存与取的顺序可能不同)
		它不能存储重复的元素

 List集合中的特有方法(下标)
 void add(int index, Object element) 将指定的元素,添加到该集合中的指定位置上
 Object get(int index)返回集合中指定位置的元素。
 Object remove(int index) 移除列表中指定位置的元素, 返回的是被移除的元素
 Object set(int index, Object element)用指定元素替换集合中指定位置的元素,返回值的更新前的元素
 ArrayList:
底层数据结构是数组,查询快,增删慢
线程不安全,效率高
 LinkedList:
底层数据结构是链表,查询慢,增删快
线程不安全,效率高
 泛型: 用来约束数据的数据类型
 泛型的格式:
<数据类型>
泛型可以使用在 类,接口,方法上
 泛型的好处
A:提高了程序的安全性
B:将运行期遇到的问题转移到了编译期
C:省去了类型强转的麻烦
 增强for:在循环的过程中不能修改集合的长度
简化数组和Collection集合的遍历
格式:
for(元素数据类型 变量 : 数组或者Collection集合) {
使用变量即可,该变量就是元素
}
好处:简化遍历(语法糖)
 HashSet:
元素唯一不能重复
底层结构是 哈希表结构
元素的存与取的顺序不能保证一致
 LinkedHashSet:
元素唯一不能重复
底层结构是 链表结构+哈希表结构

  • 元素的存与取的顺序一致
    如何保证元素的唯一的?
    重写hashCode() 与 equals()方法

Map集合的遍历2种方式

Map<String,String> map =new HashMap<String,String>();
map.put(“a”, “A”);
map.put(“b”, “B”);
map.put(“c”, “C”);
map.put(“d”, “D”);

	//1.keyset方法。
	Set<String> set=map.keySet();
	//1.1迭代器
	Iterator<String> it=set.iterator();
	while(it.hasNext())
	{
		String key=it.next();
		String value=map.get(key);
		System.out.println(key+"="+value);
	}
	//1.2增强for
	for(String s:set)
		System.out.println(s+"="+map.get(s));
	
	//2.entryset
	System.out.println("-------------");
	
	Set<Map.Entry<String, String>> st =map.entrySet();	
	Iterator<Map.Entry<String, String>> it1 =st.iterator();
	while(it1.hasNext())
	{
		Map.Entry<String, String> map1 =it1.next();
		String key1=map1.getKey();
		String value1=map1.getValue();
		System.out.println(key1+"="+value1);
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值