集合
集合中不能存储基本类型数据, 只能存储引用数据类型数据
集合的大小是可变的
Collection一次存储一个元素
map一次存储一个<键,值>
对
collection类是一个接口类,位于java.util包中,继承于extends Iterable
Iterable也是一个接口类
Collection集合常用方法
boolean | add ( E e)添加一个元素 |
---|---|
boolean | addAll (Collection<? extends E > c) 把另外一个集合添加到当前集合 |
void | clear() 清除集合中的所有元素 |
boolean | contains (Object o) 判断集合中是否存在某个元素o |
boolean | containsAll (Collection<?> c) 判断集合 C 中是否存在另外一个集合 |
boolean | equals (Object o) |
int | hashCode() |
boolean | isEmpty() 判断集合是否为空 |
Iterator < E > | iterator() 返回集合的迭代器 |
boolean | remove (Object o) 把集合中指定的元素移除 需要调用集合的equals()方法 ------------------------------▲▲注意:如果有两个重复的元素,只删除第一个元素 |
boolean | removeAll (Collection<?> c) 移除指定集合中所有的元素 |
boolean | retainAll (Collection<?> c) 只保留集合C中有的元素 |
int | size() 返回集合中元素的个 |
Object[] | toArray() 把集合转换为Object[] 数组, ▲▲注意: 无参toArrays() 返回的是Object类型 的数据 |
<T>T[] | toArray(T[] a) 传入的参数数组最后和列表元素数目一致▲▲ 注意: 如果实参数组长度不够, 会创建一个新的数组 ; 如果实参数据较大, 后面其他元素的值为null |
package com.bjpowernode.demo01;
import java.util.ArrayList;
import java.util.Collection
/**
* 测试Collection集合常用方法1
* @author 作者谁 ~ ~ ~
*
*/
public class Test01 {
public static void main(String[] args) {
//1. 创建 Collection 集合, Collection是一个接口,需要指向实现类对象
Collection collection = new ArrayList();
//2. 添加元素, 没有通过泛型指定元素的类型,默认元素的类型就是 Object 对象
collection.add("powernode");
//基本类型可以自动装箱为对应包装类对象, 这个包装类对象可以转换为Object 引用
collection.add(123);
collection.add(true);
collection.add("aaaa");
collection.add( new Person());
collection.add(new Object());
//3. *打印输出, 重写了 toString()*
System.out.println( collection );
//4. 删除元素
//删除 123时,调用了 Integer对象的 equals()
collection.remove(123);
System.out.println( collection );
//*Object 类 的 equals()方法默认使用==判断*
collection.remove( new Object());
System.out.println( collection );
//5. 判断
System.out.println( collection.isEmpty()); //false
System.out.println( collection.size()); //5
System.out.println( collection.contains(true)); //true
}
}
错误的代码 ↓↓↓
Collection<String> collection = new ArrayList<>();
//*此处错误,因为指定是String类型,集合指定一种类型,只能使用这一种*
collection.add(123);