Java—集合01

Posted sunlangui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java—集合01相关的知识,希望对你有一定的参考价值。

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

 

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

 

  1.ArryList集合

   ArrayList集合是程序中最常见的一种集合,它属于引用数据类型(类)。在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 addObject obj

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

Object getint index

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

int size()

返回集合中的元素个数

 

 

 

 

   

boolean addint index,  Object obj

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

Object removeint index

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

void clear()

清空集合中所有元素

Object setint index, Object obj

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

 

 

  集合的遍历

 代码演示:

public static void main(String[] args)

 

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

 

    list.add(new Person("小强"));

 

    list.add(new Person("老王"));

 

    list.add(new Person("小虎"));

 

    list.add(new Person("小泽"));

 

    list.add(new Person("小红"));

 

    for(int i=0; i<list.size(); i++)

 

        Person p = list.get(i);

 

System.out.println(p);

 

 

 

集合的继承实现关系

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

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

 

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

 

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

 

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

 

 

2.collection接口

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

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

  技术图片

 

 

 

 

 

创建集合的格式:

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

方式2Collection 变量名 = new ArrayList();

 

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();

 

//清空后,集合元素为[],代表没有元素

 

 

以上是关于Java—集合01的主要内容,如果未能解决你的问题,请参考以下文章

java多线程系类:JUC集合:01之框架

Java—集合01

Java集合01

Java 集合系列01之 总体框架

197 01 Android 零基础入门 03 Java常用工具类 04 Java集合 03 Set集合 01 Set概述

JAVA集合01_Collection接口概述常用方法集合和数组互转3种遍历方式