1. Collection 接口和方法
1. 常用方法

代码示例
package com.baidu.www;
import java.util.ArrayList;
import java.util.List;
public class CollectionMethod {
public static void main(String[] args) {
List list = new ArrayList();
// add:添加单个元素
list.add("java");
list.add(10);
list.add(true);
// remove:删除指定元素
list.remove(0);
System.out.println(list);
list.remove(true);
System.out.println(list);
// contains:查找元素是否存在
System.out.println(list.contains(true));
// size:返回元素个数
System.out.println(list.size());
// isEmpty
System.out.println(list.isEmpty());
// clear
// list.clear();
// System.out.println(list);
// addAll:添加多个元素
ArrayList list1 = new ArrayList();
list1.add("刷刷");
list1.add("shuashua");
list.addAll(list1);
System.out.println(list);
// containAll:查找多个元素是否都存在
System.out.println(list.containsAll(list1));
// removeAll: 删除多个元素
System.out.println(list.removeAll(list1));
System.out.println(list);
}
}
2. 接口遍历元素方式 1 —— 迭代器 Iterator




(1)迭代器
itit 快速生成
Ctrl键 + J键 显示所有快捷键的快捷键
代码示例
package com.baidu.www;
/*
迭代器:
概述:
对过程的重复,称为迭代。
迭代器是遍历Collection集合的通用方法。
迭代器的常用方法:
E next(); 返回迭代的下一个元素对象
boolean hasNext(); 如果仍有元素可以迭代,则返回true
注意:
列表迭代器是List独有的遍历方式,可以在对集合遍历的同时进行添加、删除等操作。
但是必须通过调用列表迭代器的方法来实现。
使用步骤:
1. 根据集合对象获取其对应的迭代器对象
2. 判断迭代器中是否有元素
3. 如果有元素,获取元素
总结:
普通的迭代器在遍历集合时不能添加或删除元素,否则会报并发修改异常
列表迭代器在遍历集合的同时可以修改集合中的元素(添加、删除等),必须使用列表迭代器中的方法
*/
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Test {
public static void main(String[] args) {
// 通过迭代器遍历List集合
// 1. 创建集合对象
List list = new ArrayList();
// 2. 创建元素对象
// 3. 将元素对象添加到集合对象中
list.add("a");
list.add("b");
list.add("c");
// // 4. 遍历集合
//// 使用步骤:
//// 1. 根据集合对象获取其对应的迭代器对象
// Iterator it = list.iterator();
//// 2. 判断迭代器中是否有元素
// while (it.hasNext()){ // 如果有元素,就一直迭代
//// Object obj = it.next();
// String str = (String)it.next();
// System.out.println(str);
// }
//// 3. 如果有元素,获取元素
System.out.println("===============================");
// 判断如果有字符串"b",在后边添加一个新的字符串"java"
// 4. 遍历集合
// 使用步骤:
// 1. 根据集合对象获取其对应的迭代器对象
Iterator it = list.iterator();
// 2. 判断迭代器中是否有元素
while (it.hasNext()){ // 如果有元素,就一直迭代
// Object obj = it.next();
String str = (String)it.next();
if("b".equals(str)){ // 常量放在前面,规避空指针异常,TIP!!!,
// 存在元素b
// list.add("java"); // ConcurrentModificationException(并发修改异常)
}
System.out.println(str);
}
// 3. 如果有元素,获取元素
}
}
(2)列表迭代器
代码示例
package com.baidu.www;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
public class Test1 {
// 需求:测试列表迭代器
public static void main(String[] args) {
// 通过迭代器遍历List集合
// 1. 创建集合对象
List list = new ArrayList();
// 2. 创建元素对象
// 3. 将元素对象添加到集合对象中
list.add("a");
list.add("b");
list.add("c");
System.out.println("===============================");
// 判断如果有字符串"b",在后边添加一个新的字符串"java"
// 4. 遍历集合
// 使用步骤:
// 1. 根据集合对象获取其对应的列表迭代器对象
ListIterator lit = list.listIterator();
// 2. 判断迭代器中是否有元素
while (lit.hasNext()){ // 如果有元素,就一直迭代
String str = (String)lit.next();
if("b".equals(str)){ // 常量放在前面,规避空指针异常,TIP!!!,
// 存在元素b
lit.add("java");
}
System.out.println(str);
}
// 3. 如果有元素,获取元素
System.out.println("=======================");
System.out.println(list);
}
}
3. 接口遍历元素方式 2 —— for 循环增强


代码示例
package com.baidu.www;
/*
增强for格式
快捷方法:
iter + Enter键
注意:
增强for的底层依赖的是迭代器Iterator
增强for是迭代器的简写形式
*/
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) {
// 需求:通过增强for遍历list集合
// 1. 创建集合对象
List list = new ArrayList();
// 2. 创建元素对象
// 3. 将元素对象添加到集合对象中
list.add(10);
list.add(30);
list.add(20);
list.add(10);
list.add(40);
// 4. 遍历集合
for(Object obj : list){
// obj是集合中的元素,其本身应该是Integer类型的数据
Integer i1 = (Integer) obj;
System.out.println(i1);
}
System.out.println("=============================");
// 快捷键生成
for (Object object : list) {
}
}
}

浙公网安备 33010602011771号