集合分为Collection和Map两种体系。
Collection 接口有 3 种子类型集合: List
、Set
和 Queue
,再下面是一些抽象类,最后是具体实现类,常用的有 ArrayList、LinkedList、HashSet、LinkedHashSet、ArrayBlockingQueue等。下面的图片可展示它们之间的具体关系。
常用的方法
代码实现
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class CollectionPrintTest {
public static void main(String[] args) {
//1.准备一个Collection集合并打印
Collection collection = new ArrayList();
collection.add(10);
collection.add("two");
collection.add(new Person("李四", 30));
System.out.println("-----------------------------------");
//Collection集合的遍历方式一:调用toString方法,得到String类型的整体
System.out.println(collection);
//Collection集合的遍历方式二:通过迭代器对象获取每个元素,此方法更加灵活
//获取集合对应的迭代器对象
Iterator iterator = collection.iterator();
//判断集合中是否有可以访问的元素
while (iterator.hasNext()) {
//取出一个元素并指向下一个位置
System.out.println("获取到的元素是" + iterator.next());
//注意:在迭代器中想要删除元素,一定要用迭代器自己的引用方法
}
System.out.println("-----------------------------------------");
//使用StringBuilder类实现字符串的拼接
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("[");
Iterator iterator1 = collection.iterator();
while (iterator1.hasNext()) {
//Object obj = iterator1.next();
if (iterator1.hasNext()) {
//如何判断是集合中最后一个元素
//如果取出一个元素后发现hasNext()为假,则证明该元素是最后一个元素
stringBuilder.append(iterator1.next() /*obj*/).append(",").append(" ");
} else {
stringBuilder.append(iterator1.next() /*obj*/).append("]");
}
}
System.out.println(stringBuilder);
}
}
测试截图