Java集合与泛型

文章介绍了Java中的对象数组和集合类的概念,包括ArrayList的特点如长度可变、泛型使用,以及添加、删除、修改和查询元素的方法。接着讨论了HashSet集合的无序性、唯一性特性。然后转向HashMap,阐述了Map接口的映射、获取、判断、删除功能,并展示了两种遍历Map的方法。
摘要由CSDN通过智能技术生成

对象数组

A: 基本类型的数组 : 存储的元素为基本类型
int[] arr ={1,2,3,4}
B: 对象数组 : 存储的元素为引用类型
Student[] stus =new Student[3];
Student 代表一个自定义类
Stus 数组中 stus [0], stus [1], stus [2] 的元素数据类型为 Student,
都可以指向一个 Student 对象。

集合类

集合概述:

为了方便对多个对象进行操作,对着多个对象做一个容器类型的变量的存储。
StringBuilder, 数组都是容量类型的数组。
数组的长度是固定的, 如果有时候元素的个数不确定的, 我们无法定义出数组的长度 , 这个时候, java 就提供了集合类供我们使用。

集合类的特点

ArrayLst<E>:
1.长度可变。
2.ArrayList <E>:大小可变数组的实现
3.<E>: 是一种特殊的数据类型,泛型。 举例:ArrayList <String>, ArrayList <Student>
4.构造方法:ArrayList()
5.ArrayList添加元素:
public boolean add(E e): 添加元素
public void add(int index,E element): 在指定的索引处添加一个元素
6.ArrayList删改查方法
A:获取元素:public E get(int index):返回指定索引处的元素
B:集合长度:public int size():返回集合中的元素的个数
C:删除元素:1.public boolean remove(Object o):删除指定的元素,返回删除是否成功                
                   2.public E remove(int index):删除指定索引处的元素,返回被删除的元素
D:修改元素:public E set(int index,E element): 修改指定索引处的元素,返回被修改的元素

 HashSet集合:

Set集合的特点

A: 存入集合的顺序和取出集合的顺序不一致

B: 没有索引

C: 存入集合的元素没有重复

HashMap集合 

Map 常用功能
A: 映射功能:
V put(K key, V value) : 以键 = 值的方式存入 Map 集合
B: 获取功能:
V get(Object key): 根据键获取值
int size(): 返回 Map 中键值对的个数
C: 判断功能:
boolean containsKey (Object key): 判断 Map 集合中是否包含键为 key 的键值对
boolean containsValue (Object value): 判断 Map 集合中是否包含值为 value 键值对
boolean isEmpty (): 判断 Map 集合中是否没有任何键值对
D: 删除功能:
void clear(): 清空 Map 集合中所有的键值对
V remove(Object key): 根据键值删除 Map 中键值对
E: 遍历功能:
Set< Map.Entry <K,V>> entrySet (): 将每个键值对封装到一个个 Entry 对象中 , 再把所有 Entry 的对象封装到 Set 集合中返回
Set<K> keySet () : 将 Map 中所有的键装到 Set 集合中返回
Collection<V> values(): 返回集合中所有的 value 的值的集合

public class MapDemo4 {
	public static void main(String[] args) {
		//创建Map对象
		Map<String,String> map = new HashMap<String,String>();
		//添加映射关系
		map.put("谢婷疯", "张箔纸");
		map.put("陈关西", "钟欣桶");
		map.put("李亚碰", "王飞");
		//遍历Map对象
		
		Set<String> keys = map.keySet();
		for (String key : keys) {
			String value = map.get(key);
			System.out.println("丈夫:" + key + "---" + "媳妇:" + value);
		}
		
	}

Map 的两种遍历方式
利用 keySet () 方法遍历
利用 entrySet () 方法遍历

public class MapDemo5 {
	public static void main(String[] args) {
		//创建Map对象
		Map<String,String> map = new HashMap<String,String>();
		//添加映射关系
		map.put("尹志平", "小龙女");
		map.put("令狐冲", "东方菇凉");
		map.put("玄慈", "叶二娘");
		Set<Map.Entry<String,String>> entrys = map.entrySet();
		for (Map.Entry<String, String> entry : entrys) {
 
			String key = entry.getKey();
			String value = entry.getValue();
			System.out.println("丈夫:" + key + "---" + "媳妇:" + value);
		}
		
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值