List集合的常见方法详解

List接口特点:有序,索引,可以重复元素。 实现类:ArrayList,LinkedList

ArrayList:查询快,增删慢

LinkedList:查询慢,增删快

List接口中的抽象方法,有一部分方法和它的父接口Collection是一样的。

List接口中自己特有的方法,带有索引的功能,如remove,set,add等

1、add(int  index,E):将元素插入到列表的指定索引上,带有索引的操作,防止越界问题

 2、remove(int  index):移除指定索引上的元素,返回被删除之前的元素

 3、set(int  index):修改指定索引上的元素,返回被修改之前的元素

常见异常有:

     java.lang.IndexOutOfBoundsException:集合越界异常
           AarrayIndexOutOfBoundsException:数组越界异常
           StringIndexOutOfBoundsException:字符串越界异常

三种方法的代码演示:

package itcast.demo;

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

/*
 * List接口派系,继承Collection接口
 * 		下面很多实现类
 * List接口特点:有序,索引,可以重复元素
 * 		实现类,ArrayList,LinkedList
 * 
 * List接口中的抽象方法,有一部分方法和它的父接口Collection是一样的
 * List接口中自己特有的方法,带有索引的功能
 */
public class ListDemo {
	public static void main(String[] args) {
		function();
		function_1();
		function_2();
	}
	/*
	 * add(int index,E):将元素插入到列表的指定索引上
	 * 带有索引的操作,防止越界问题
	 * java.lang.IndexOutOfBoundsException:集合越界异常
	 * 	   AarrayIndexOutOfBoundsException:数组越界异常
	 * 	   StringIndexOutOfBoundsException:字符串越界异常
	 */
	public static void function() {
		List<String> list = new ArrayList<String>();
		list.add("abc1");
		list.add("abc2");
		list.add("abc3");
		list.add("abc4");
		System.out.println(list);
		
		list.add(1,"haha");//在第一位上添加字符串 haha
		System.out.println(list);
	}
	
	/*
	 * remove(int index):移除指定索引上的元素,返回被删除之前的元素
	 */
	public static void function_1() {
		List<Double> list = new ArrayList<Double>();
		list.add(1.1);
		list.add(1.2);
		list.add(1.3);
		list.add(1.4);
		System.out.println(list);
		
		Double d = list.remove(0);//将0位上的数删除
		System.out.println(d);
		System.out.println(list);
	}
	
	/*
	 * set(int index):修改指定索引上的元素,返回被修改之前的元素
	 */
	public static void function_2() {
		List<Integer> list = new ArrayList<Integer>();
		list.add(1);
		list.add(2);
		list.add(3);
		list.add(4);
		System.out.println(list);
		
		Integer d = list.set(0,5);//将0位上的数修改为5
		System.out.println(d);
		System.out.println(list);
	}
	
}

打印结果如下:

  [abc1, abc2, abc3, abc4]
  [abc1, haha, abc2, abc3, abc4]
  [1.1, 1.2, 1.3, 1.4]
  1.1
  [1.2, 1.3, 1.4]
  [1, 2, 3, 4]
  1
  [5, 2, 3, 4]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值