对象数组
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);
}
}
}