标签:java 接口 vector collection 动态
集合:用来存放多种元素的一种类型。
框架:是一个结构体系,由很多类组成。
下面介绍两个常用的集合框架(collection集合和map集合)。
collection是一个单列集合,它是一个接口;它下面主要有List和Set两个子接口,List子接口下面又包含ArrayList、LinkedList和Vector具体实现类;Set子接口下面主要有HashSet和TreeSet具体实现类。其中List接口是有索引,而Set接口无索引;HashSet里面元素是有序的,TreeSet里面元素是无序的。
ArrayList:动态数组,表示数组长度可变;
ArrayList,LinkedList 使用方法完全一样, 区别在于数据存储方式不同,称为不同的数据结构;
ArrayList:基于数组实现(优点:连续存放,查找速度比较快,缺点是增加元素或者删除元素比较慢);
LinkedList:基于链表实现(缺点:不连续存放,查找速度比较慢,优点:增加元素或删除元素比较快)。
Vector 向量:基于数组实现的,但是已经过时,现在都用ArrayList。
一个ArrayList的例子:
创建一个类Test:
public class Test {
public static void main(String[] args) {
ArrayList<String> al=new ArrayList<String>();
al.add("beijing");
al.add("tianjin");
al.add("shanghai");
al.add(1, "guangzhou");//在索引为1的位置上加入元素guangzhou
Show1(al);
al.set(1, "广州");//把索引为1的位置上元素修改为广州
System.out.println("*****************");
Show2(al);
System.out.println("*****************");
al.remove(2);//删除索引为2的元素,即tianjin,元素索引从0开始
Show2(al);
}
//方法一:for循环
public static void Show1(ArrayList<String> al)
{
for(int i=0;i<al.size();i++)
{
System.out.println(al.get(i));
}
}
//方法二:iterator遍历器遍历
public static void Show2(ArrayList<String> al)
{
Iterator<String> it=al.iterator();//相当于元素指针
while(it.hasNext())//判断有没有下一个
{
System.out.println(it.next());
}
}
}
本文出自 “John” 博客,请务必保留此出处http://zyh928.blog.51cto.com/9467544/1827532
标签:java 接口 vector collection 动态
原文地址:http://zyh928.blog.51cto.com/9467544/1827532