集合,集合是java中提供的一种容器,可以用来存储多个数据。

 

数组的长度是固定的。集合的长度是可变的。集合中存储的元素必须是引用类型数据

 

1.ArryList集合

  集合是程序中最常见的一种集合,它属于引用数据类型(类)。在ArrayList内部封装了一个长度可变的数组,当存入的元素超过数组长2   度时,ArrayList会在内存中分配一个更大的数组来存储这些元素,因此可以将ArrayList集合看作一个长度可变的数组。

   集合的创建:   

创建对象:与其他普通的引用数据类型创建方式完全相同,但是要指定容器中存储的数据类型:

 

ArrayList<要存储元素的数据类型> 变量名 = new ArrayList<要存储元素的数据类型>(); 

通过举几个例子,来明确集合的创建方式:

 

存储String类型的元素

 

ArrayList<String> list = new ArrayList<String>();

 

存储int类型的数据

 

ArrayList<Integer> list = new ArrayList<Integer>();

存储Phone类型的数据

 

ArrayList<Phone> list = new ArrayList<Phone>();

 

集合中几个常用的方法:

方法声明

功能描述

boolean add(Object obj)

将指定元素obj追加到集合的末尾

Object get(int index)

返回集合中指定位置上的元素

int size()

返回集合中的元素个数

 


 

 

   

boolean add(int index,  Object obj)

将指定元素obj插入到集合中指定的位置

Object remove(int index)

从集合中删除指定index处的元素,返回该元素

void()

清空集合中所有元素

Object set(int index, Object obj)

用指定元素obj替代集合中指定位置上的元素

 

 

  集合的遍历

 代码演示:

public static void main(String[] args) {
 
ArrayList<Person> list = new ArrayList<Person>();
 
小强"));
 
老王"));
 
小虎"));
 
小泽"));
 
小红"));
 
    for(int i=0; i<list.size(); i++){
 
        Person p = list.get(i);
 
System.out.println(p);
 
}
 
}

集合的继承实现关系

类发现它继承了抽象类AbstractList同时实现接口List,而List接口又继承了Collection接口。Collection接口为最顶层集合接口了。

我们在使用ArrayList类时,该类已经把所有抽象方法进行了重写。那么,实现Collection接口的所有子类都会进行方法重写。

 

Collection接口常用的子接口有:List接口、Set接口

 

List接口常用的子类有:ArrayList类、LinkedList类

 

Set接口常用的子类有:HashSet类、LinkedHashSet类

 

 

2.collection接口

接口是集合中的顶层接口,那么它中定义的所有功能子类都可以使用。

  collection接口一些常用的方法(详细见API);

 

Java定义只有整数的集合 java中如何定义一个集合_System

 


 

 

 

 

创建集合的格式:

方式1:Collection<元素类型> 变量名 = new ArrayList<元素类型>();

方式2:Collection 变量名

 

Collection方法的一些代码演示:

//创建集合

 

Collection coll = new ArrayList();

 

//1,往集合中添加对象元素。add(E e)方法,E代表创建集合时所指定的数据类型如<String>,那么,E就代表String类型;创建集合时若没有指定数据类型,那么,E就代表Object类型。

 

coll.add("abc");
 
coll.add("ef");
 
coll.add("g");        
 
//把集合打印一下。
 
System.out.println(coll); //打印结果为:[abc, ef, g]
 
System.out.println(coll.toString()); //打印结果为:[abc, ef, g]
 
//2,从集合中删除元素。remove(Object o)方法
 
coll.remove("ef");        
 
//删除后,集合元素为[abc, g]
 
//3,判断集合中是否包含指定元素。contains(Object o)方法
 
System.out.println(coll.contains("abc"));
 
//打印结果为true
 
System.out.println(coll.contains("ef"));
 
//打印结果为false
 
    
 
//4,获取集合元素个数。size()方法
 
System.out.println(coll.size());
 
//打印结果为2
 
 
 
//5,返回包含集合中所有元素的数组。toArray()方法
 
String[] array = coll.toArray();
 
//数组中的元素为{"abc", "g"}
 
 
 
//6,清除集合元素。remove()方法
 
coll.clear();
 
//清空后,集合元素为[],代表没有元素