标签:contain new next 些许 三种遍历方式 == 通过 正则 iterator
纯手工敲上去的,可能有些许偏差,见谅
修饰&返回值 | 方法 | 描述 |
---|---|---|
boolean | add(E element) | 将一个指定类型的元素, 添加到集合的末尾。 |
boolean | addAll(Collection<E> coll) | 批量添加,将一个集合中的所有的元素,添加到当前集合的末尾。 |
boolean | remove(E ele) | 删除集合中指定的元素。 |
boolean | removeAll(Collection<E> coll) | 删除集合中所有的在参数集合中存在的元素(删除交集)。 |
boolean | retainAll(Collection<E> coll) | 保留集合中所有的在参数集合中存在的元素,删除其他元素(保留交集)。 |
void | clear() | 清空集合中的所有的数据。 |
boolean | removeIf(Predicate<E> predicate) | 删除集合中满足指定条件的数据。 |
boolean | contains(E ele) | 判断一个集合中是否包含指定的元素。 |
boolean | containsAll(Collection<E> coll) | 判断参数集合中, 是否所有的元素都在当前集合中包含。 |
int | size() | 获取集合中元素的数量, 类似于数组 length。 |
boolean | isEmpty() | 判断一个集合是否是空集合。 |
Object[] | toArray() | 将集合中的元素,转成 Object 数组。 |
T[] | toArray(T[] arr) | 将集合中的元素,转成指定类型的数组。 |
-增强for
for (String element : collection) {
System.out.println(element);
}
注意事项
在使用增强for循环进行元素的遍历过程中, 不要修改集合中的内容 !!! 否则, 会出现 ConcurrentModificationException 。
-迭代器(Iterator),才是真正用来遍历集合的。
工作原理
// 1. 获取到一个迭代器对象
Iterator<String> iterator = collection.iterator();
// 2. 通过hasNext判断是否还有下一个元素
while (iterator.hasNext()) {
// 3. 向后指向,并返回这个新的指向的元素
String ele = iterator.next();
System.out.println(ele);
}
注意:获取迭代器必须紧挨while循环,否则会出现一些错误,比如并发修改异常
错误示例
-forEach(jdk 1.8及以后提供的方法)
collection.forEach(System.out::println);
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class Test {
public static void main(String[] args) {
Collection<String> collection=new ArrayList<>();
Collection<String> temp=new ArrayList<>();
collection.add("lucy");
collection.add("lily");
collection.add("poly");
collection.add("uncle wang");
//使用迭代器进行遍历
Iterator<String> iterator=collection.iterator();
while(iterator.hasNext()){
System.out.print(iterator.next()+" ");
}
}
}
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class Test {
public static void main(String[] args) {
Collection<String> collection=new ArrayList<>();
Collection<String> temp=new ArrayList<>();
collection.add("lucy");
collection.add("lily");
collection.add("poly");
collection.add("uncle_wang");
//使用增强for遍历
for(String i:collection){
System.out.print(i+" ");
}
System.out.println();
System.out.println("=====================");
temp.add("uncle_wang");
temp.add("poly");
temp.add("lily");
temp.add("li lei");
collection.addAll(temp);
//使用迭代器进行遍历
Iterator<String> iterator=collection.iterator();
while(iterator.hasNext()){
System.out.print(iterator.next()+" ");
}
}
}
public class Test {
public static void main(String[] args) {
Collection<String> collection=new ArrayList<>();
Collection<String> temp=new ArrayList<>();
Collection<String> del=new ArrayList<>();
Collection<String> mainTain=new ArrayList<>();
mainTain.add("lily");
mainTain.add("lucy");
mainTain.add("uncle_wang");
mainTain.add("xiao_feng");
mainTain.add("xiao_huang");
del.add("lily");
del.add("uncle_wang");
collection.add("lucy");
collection.add("lily");
collection.add("poly");
collection.add("uncle_wang");
temp.add("uncle_wang");
temp.add("poly");
temp.add("lily");
temp.add("li_lei");
collection.addAll(temp);
System.out.println("原collection集合:");
for (String i : collection) {
System.out.print(i+" ");
}
System.out.println();
System.out.println("======================");
collection.remove("poly");
System.out.println("删除poly后的collection集合:");
for (String i : collection) {
System.out.print(i+" ");
}
System.out.println();
System.out.println("======================");
collection.removeAll(del);
System.out.println("删除与del集合中相同的元素后的collction集合:");
for (String i : collection) {
System.out.print(i+" ");
}
System.out.println();
System.out.println("======================");
System.out.println("原mainTain集合:");
for (String i : mainTain) {
System.out.print(i+" ");
}
System.out.println();
System.out.println("使用retainAll后的mainTain集合:");
mainTain.retainAll(del);
for (String i : mainTain) {
System.out.print(i+" ");
}
System.out.println();
System.out.println("======================");
}
}
String[] ret = collection.toArray(new String[0]);
Integer[] ret = collection.toArray(new Integer[0]);
Double [] ret = collection.toArray(new Double[0]);
Object[] array = collection.toArray();
标签:contain new next 些许 三种遍历方式 == 通过 正则 iterator
原文地址:https://www.cnblogs.com/dch-21/p/12723187.html