Collection(集合):容器,用于存放对象(引用类型。基本类型需要自动装箱)
List(列表):元素有序,元素可以重复 (有索引)。 通过元素的equals()方法判断是否重复。 查看
Set(集):元素无序,不可重复 (没有索引)。 遍历只能用Iterator迭代器和增强for, 不能使用普通for遍历。 查看
ArrayList(数组列表): 查询快,增删慢。 查看
LinkedList(链表): 查询慢,增删快。查看
HashSet(哈希表): 查询快,增删慢。 (底层其实就是Map) 。 存放的引用类型需重写hashCode()和equals()方法。 查看
LinkedHashSet(哈希链表): 查询慢,增删快。 有序的,存放顺序和取出顺序一致。查看
Collection集合(接口)中常用的方法:
Demo.java(Collection集合通用方法):
package cn.xxx.demo;
import java.util.ArrayList;
import java.util.Collection;
// Collection接口中的常用方法
public class Demo {
public static void main(String[] args) {
function_3();
}
private static void function_3(){
Collection<String> coll = new ArrayList<String>();
coll.add("abc");
coll.add("money");
coll.add("money");
coll.add("123");
System.out.println(coll);
boolean b = coll.remove("money"); // 删除成功返回true。 只删除第一个。
System.out.println(b);
System.out.println(coll);
}
private static void function_2() {
Collection<String> coll = new ArrayList<String>();
coll.add("abc");
coll.add("money");
coll.add("123");
Object[] objArr = coll.toArray(); // 集合转成数组,数组中的元素都是Object类型。
for(int i = 0 ; i < objArr.length ; i++){
System.out.println(objArr[i]);
}
}
/*
* 学习Java中三种长度表现形式
* 数组.length 属性
* 字符串.length() 方法
* 集合.size()方法
*/
private static void function_1() {
Collection<String> coll = new ArrayList<String>();
coll.add("abc");
coll.add("money");
coll.add("123");
boolean b = coll.contains("abc"); // 判断元素是否在集合中存在。 底层由元素的equals()方法实现。
System.out.println(b);
}
public static void function(){
//接口多态的方式调用
Collection<String> coll = new ArrayList<String>(); // Collection接口的实现类。 有序的集合
coll.add("abc"); // 添加元素
coll.add("bcd");
System.out.println(coll);
coll.clear(); // 清空集合中的所有元素。 只是清空元素,集合本身还存在。 还可以再继续add添加元素。
System.out.println(coll);
}
}