List常用方法

实例化:List[<;数据类型>] list = new ArrayList<;数据类型>;

获得集合内元素个数:list.size();

添加元素:

默认添加:list.add(e);

指定下标添加(添加后下标后的元素向后挪一位):list.add(index,e);

删除元素:

返回是否删除:list.remove(e);

直接删除指定下标的元素(只删除找到的第一个相符合的元素):list.remove(index);

替换元素(替换掉指定下标的元素):list.set(index,e);

取出元素:list.get(index);

清空集合:list.clear();

判断集合中是否存在某个元素(存在返回true,不存在返回false):list.contains(e);

对比两个集合中的所有元素:

两个对象一定相等:list.equals(list2);

两个对象不一定相等:list.hashCode() == list2.hashCode();

(两个相等对象的equals方法一定为true, 但两个hashcode相等的对象不一定是相等的对象。)

获得元素下标:

元素存在则返回找到的第一个元素的下标,不存在则返回-1:list.indexOf(e);

元素存在则返回找到的最后一个元素的下标,不存在则返回-1:list.lastIndexOf(e);

判断集合是否为空(空则返回true,非空则返回false):list.isEmpty();

返回Iterator集合对象:list.iterator();

将集合转换为字符串:list.toString();

截取集合(从fromIndex开始在toIndex前结束,[fromIndex,toIndex)):list.subList(fromIndex,toIndex);

将集合转换为数组:

默认类型:list.toArray();

指定类型(objects为指定类型的数组对象,并将转换好的数组赋值给objects数组):list.toArray(objects);

boolean add(E e);	
	List接口继承Collection接口 add方法,使用操作和Collection一致,并且这
	里采用的添加方式是【尾插法】
	
boolean add(int index, E e);
	List接口【特有方法】,在指定位置,添加指定元素。
	
boolean addAll(Collection<? extends E> c);
	List接口继承Collection接口 addAll方法,使用操作和Collection一致,并
	且这里采用的添加方式是【尾插法】
	
boolean addAll(int index, Collection<? extends E> c);
	List接口【特有方法】,在指定下标位置,添加另一个集合中所有内容


E remove(int index);
List接口【特有方法】,获取指定下标位置的元素。

boolean remove(Object obj);
	List接口继承Collection接口方法。删除集合中的指定元素
	
boolean removeAll(Collection<?> c);
	List接口继承Collection接口方法。删除当前集合中和参数集合重复元素
	
boolean retainAll(Collection<?> c);
	List接口继承Collection接口方法。保留当前集合中和参数集合重复元素
	
clear();
	List接口继承Collection接口方法。清空整个集合中的所有元素


E set(int index, E e);
List接口【特有方法】,使用指定元素替代指定下标的元素,返回值是被替换的元


int size();
List接口继承Collection接口方法。获取集合中有效元素个数

boolean isEmpty();
	List接口继承Collection接口方法。判断当前集合是否为空

boolean contains(Object obj);
	List接口继承Collection接口方法。判断指定元素是否包含在当前集合中

boolean containsAll(Collection<?> c);
	List接口继承Collection接口方法。判断参数集合是不是当前集合在子集合

Object[] toArray();
	List接口继承Collection接口方法。获取当前集合中所有元素Object数组

E get(int index);
	List接口【特有方法】。获取指定下标对应的元素

List<E> subList(int fromIndex, int toIndex);
	List接口【特有方法】。获取当前集合指定子集合,从fromIndex开始,到
	toIndex结束。fromIndex <= 范围 < toIndex

int indexOf(Object obj);
	List接口【特有方法】。获取指定元素在集合中第一次出现位置

int lastIndexOf(Object obj);
	List接口【特有方法】。获取指定元素在集合中最后一次出现的位置

代码演示
package com.qfedu.a_list;

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

public class Demo1 {
public static void main(String[] args) {
/*
* List是一个接口,没有自己的类对象,这里使用List接口的
* 实现类ArrayList来演示代码。
*/
List list = new ArrayList();

	/*
	 * 添加方法演示
	 */
	list.add("浓郁咖啡摩卡");
	list.add("浓郁咖啡拿铁");
	list.add("焦糖玛奇朵");
	list.add("摩卡可可碎星冰乐");
	list.add("可可卡布奇诺");
	
	System.out.println(list);
	
	list.add(3, "美式咖啡");
	
	System.out.println(list);
	
	List<String> list2 = new ArrayList<String>();
	
	list2.add("肥宅快乐水");
	list2.add("芬达");
	list2.add("雪碧");
	list2.add("冰峰");
	
	list.addAll(4, list2);
	
	System.out.println(list);
	
	/*
	 * 删除方法
	 */
	String remove = list.remove(1);
	System.out.println(remove);
	System.out.println(list);
	
	// 条件过滤,这里使用了JDK1.8 新特征 Lambda表达式和函数式接口 【后期知识点】
	list.removeIf((str) -> str.length() > 4);
	System.out.println(list);
}

}
public class Demo2 {
public static void main(String[] args) {
/*
* List是一个借口,没有自己的类对象,这里使用List接口的
* 实现类对象ArrayList来演示代码
*/
List list = new ArrayList();

	/*
	 * 添加方法演示
	 */
	list.add("浓郁咖啡摩卡");
	list.add("浓郁咖啡拿铁");
	list.add("焦糖玛奇朵");
	list.add("摩卡可可碎星冰乐");
	list.add("可可卡布奇诺");
	list.add("肥宅快乐水");
	list.add("芬达");
	list.add("雪碧");
	list.add("冰峰");
	list.add("浓郁咖啡摩卡");
	list.add("浓郁咖啡拿铁");
	list.add("焦糖玛奇朵");
	list.add("摩卡可可碎星冰乐");
	list.add("可可卡布奇诺");
	list.add("肥宅快乐水");
	list.add("芬达");
	list.add("雪碧");
	list.add("冰峰");
	
	/*
	 * 替换修改方法
	 */
	String str = list.set(3, "细思极恐");
	System.out.println(str);
	
	System.out.println(list);
	
	/*
	 * 查询系统方法
	 */
	//获取指定位置下标的元素
	String string = list.get(1);
	System.out.println(string);
	
	//从指定位置开始,到目标位置结束,获取对应的子集合
	List<String> subList = list.subList(2, 5);
	System.out.println(subList);
	
	int indexOf = list.indexOf("芬达");
	System.out.println(indexOf);
	
	int lastIndexOf = list.lastIndexOf("芬达");
	System.out.println(lastIndexOf);
	
	System.out.println(list.size());
}

}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

diva·in

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值