集合框架二:List

集合框架二:List

Collection类的子接口—List

位于:


java.util包下的


public interface List<E>extends Collection<E>

特点:List存储的特点:有序(存储和取出的元素一致)/可以重复的

允许多个 null 元素

一、List特有的成员方法:

1.void add(int index,Object element):在指定位置添加元素

2.Object get(int index);返回集合中指定的元素

3.ListIterator<E> listIterator(int index):List特有的迭代器


查看API 了解ListIterator 迭代器


其中有两个方法:


hasPrevious()


previous()


      和


hasNext();


next();方法进行比较


 

4.删除元素:


Object remove(int index):根据指定的索引删除元素,返回删除的元素




5.Object set(int index,Object element):根据索引修改元素,返回被修改的元素

6.返回集合中的元素个数:int size();

二、ConcurrentModificationException

表示:并发修改异常

集合中如果有kevin,就添加cidy

代码:

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


list.add(“hello”);


list.add(“java”);


list.add(“kevin”);


// 自己写的遍历集合的工具类,


ArrayDemo.arrCollection(list);


System.out.println(“—————————“);


// 解决方法一:使用普通for


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


String s = list.get(i);


if (s.equals(“kevin”)) {


list.add(“cidy”);


}


System.out.println(s);


}


// 解决方法二:


ListIterator<String> lt = list.listIterator();


while (lt.hasNext()) {


String s = lt.next();


if (s.equals(“kevin”)) {

//将指定的元素插入列表(可选操作)。

//该元素直接插入到 next 返回的下一个元素的前面(如果有),

//或者 previous 返回的下一个元素之后(如果有)


lt.add(“cidy”);//ListIterator 中有个add()方法,可以添加到


}


}


System.out.println(list);

自己写的工具类:

import java.util.Collection;

import java.util.Iterator;

public class ArrayDemo {


private ArrayDemo(){};





public static void arrCollection(Collection c){


Iterator<String> i = c.iterator();


while (i.hasNext()) {


String s = i.next();


System.out.println(s);


}


}

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/100812.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号