您的位置:首页 > 其它

Collection----List

2015-12-10 00:00 183 查看
Collection:

List:有序(存入和取出的顺序一致),元素都有索引(角标),元素可以重复

set: 元素不能重复。无序。

1,添加:

void add(index,element)

void add(index,collection)

2 , 删除:

Object remove(index)

3 , 修改

Object set(index,element)

4 , 获取

Object get(index)

int indexOf(object)

int lastIndex(object)

package org.panda.collection;

import java.util.List;
import java.util.ArrayList;

public class ListDemo01
{

public static void main(String[] args)
{
List list = new ArrayList() ;
show(list) ;
}

private static void show(List list)
{
//添加元素
list.add("abc1") ;
list.add("abc2") ;
list.add("abc3") ;
System.out.println(list);
//插入元素
list.add(1,"abc4") ;
System.out.println(list); //根据角标位插入
//删除元素
System.out.println("remove:"+list.remove(2));//根据角标位删除
System.out.println(list);
//修改元素
System.out.println("set:"+list.set(1,"abc5"));//根据角标位修改
System.out.println(list);
//获取元素
System.out.println("get:"+list.get(2));//根据角标位获取
System.out.println(list);
}

}


List:

1 , ArrayList : 内部是数组数据结构,是不同步的,替代了Vector ,特点:---->查询速度快

2 , LinkedList : 内部是链表数据结构,是不同步的,特点:---->增删元素速度非常快

3 , Vector : 内部是数组数据结构 , 是同步的 , 特点:---->增删,查都很慢

package org.panda.collection;

import java.util.Iterator;
import java.util.LinkedList;

public class LinkedListDemo01
{

public static void main(String[] args)
{
LinkedList link = new LinkedList();
link.addFirst("abc1") ;
link.addFirst("abc2") ;
link.addFirst("abc3") ;
link.addFirst("abc4") ;

Iterator it = link.iterator() ;
while(it.hasNext())
{
System.out.println(it.next());
}
System.out.println(link.getFirst());//获取第一个 但不删除
}

}


package org.panda.collection;

import java.util.ArrayList;
import java.util.Iterator;

public class LinkListDemo02
{

public static void main(String[] args)
{
ArrayList al = new ArrayList() ;
al.add(new Person("IronMan",20)) ;
al.add(new Person("IronMan",21)) ;
al.add(new Person("IronMan",22)) ;
al.add(new Person("IronMan",23)) ;
Iterator it = al.iterator() ;	//迭代器
while(it.hasNext())
{
//System.out.print(it.next());
Person p1 = (Person) it.next();
System.out.println(p1.getName()+"---->"+p1.getAge());//进行强转

}

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: