List集合


一、List集合简介

List接口是继承Collection接口,是一种单列集合。在List集合中所有元素都是一种线性方式进行存储的,可以通过索引来进行访问。List的集合有以下特点:

  1. 他是一个有序集合。例如集合元素是1,2,4,5,那么集合中元素的存储顺序也是1,2,4,5
  2. 有索引。包含了一些带索引的方法。
  3. 允许存储重复的元素。

下面我们可以看看List接口特有的方法(带索引的方法):

1.void add(int index, Object ele):在index位置插入ele元素
2.Object get(int index):获取指定index位置的元素
3.Object remove(int index):移除指点index位置的元素
4.Object set(int index, Object ele):设置指定index位置的元素为ele

二、代码实现

1.add(int index, Object ele)

代码如下(示例):

        //创建list集合
        List<String> list = new ArrayList<>();
        list.add("a");
        list.add("b");
        list.add("c");
        list.add("a");//重复元素
        System.out.println(list);

我们可以看到重复元素也可以添加成功。
[a, b, c, a]

随后我们使用add(int index, Object ele)方法,在b,c之间添加test
代码如下(示例):

//add(int index, Object ele)
        list.add(2,"test");
        System.out.println(list);

打印结果为:
[a, b, test, c, a]

2.Object get(int index)

代码如下(示例):

//Object get(int index)
        System.out.println(list.get(2));

结果为:test

而集合遍历,我们可以采用三种方法
1.iterator迭代器
2.for循环
3.增强for循环(foreach)

  1. 迭代器上一篇文章简单介绍了迭代器,实例如下:

代码如下(示例):

//获取迭代器
 		Iterator<String> it = list.iterator();
        while (it.hasNext()){
            System.out.println(it.next());
        }
  1. for循环
    代码如下(示例):
		for (int i=0;i<list.size();i++) {
            System.out.println(list.get(i));
        }
  1. 增强for循环(foreach)
    代码如下(示例):

        for (String s:list
             ) {
            System.out.println(s);
        }

我们可以看到,三种方式的打印结果如下
a
b
test
c
a

3.Object remove(int index)

代码如下(示例):


 		String s=list.remove(2);
        System.out.println("被移除的元素:"+s);
        System.out.println(list);

当我们移除掉索引为2即顺序为第3个元素时,结果如下:
被移除的元素:test
[a, b, c, a]

4.Object set(int index, Object ele)

代码如下(示例):


		//修改索引为2的元素
        list.set(2,"end");
        System.out.println(list);

打印结果如下:[a, b, end, a]

5.注意异常

当我们在使用集合时,最常出现的错误就是索引越界异常,比如说集合中只有4个元素,索引为0,1,2,3,而你要获取get(4)时,就会抛出异常:
代码如下(示例):

	//打印索引为4的元素
	System.out.println(list.get(4));

我们可以看到控制台抛出的异常为:.IndexOutOfBoundsException,这就是典型的索引越界异常,常见的有以下几种:

  1. ndexOutOfBoundsException:.索引越界异常,集合会报
  2. ArrayIndexOutOfBoundsException:数组索引越界异常
  3. StringIndexOutOfBoundsException:字符串索引越界异常
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值