关于ArrayList的知识点

关于ArrayList的知识点

一、 增

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class MyArrayList {
	public static void main(String[] args) {
		//list是一个接口,接口没有构造器方法。所以不能实例化对象
		//List List = new List();
		/**
		 * ArrayList
		 *   有序  有下标  值可以重复
		 */
		//向上转型
		List arrayList = new ArrayList();
		//放入数值  add() 赋值
		arrayList.add("张三");
		arrayList.add(10);
		arrayList.add(3.14);
		//.size()  获取数组的长度
		int length = arrayList.size();
		System.out.println("--------------获取值的第一种方法------------");
		//输出值  get(index)  获取指定下标的值
		for(int i = 0;i<length;i++) {
			arrayList.get(i);
			System.out.print(arrayList.get(i)+" ");
		}
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
System.out.println("--------------获取值的第二种方法------------");
		//foreach--增强版的for循环
		for(Object o:arrayList) {
			System.out.print(o+" ");
		}
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
System.out.println("--------------获取值的第三种方法------------");
		// .iterator() 获取一个迭代器
		Iterator iterator = arrayList.iterator();
		//.hasNext() 判断迭代器每一个值后面还有没有值,如果没有值结束循环
		while(iterator.hasNext()) {
			//.next() 获取下一个值
			System.out.println(iterator.next()+" ");

二、删

System.out.println("--------------删除值的第一种方法------------");
Iterator ite=list.iterator();
while(ite.hasNext()){
Object o=ite.next();
if(/*
此处写你希望满足的删除条件
*/)
ite.remove();
}
System.out.println("--------------删除值的第二种方法------------");
List delList = new ArrayList();//用来装需要删除的元素
for(Information ia:list)
if(ia.getId()==k){
n++;
delList.add(ia);
}
list.removeAll(delList);//遍历完成后执行删除
System.out.println("--------------删除值的第三种方法------------");
for(int i=0;i<list.size();i++){
String str=list.get(i);
if("bbb".equals(str)){
list.remove(str); }
}

三、改

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

public class Ceshi {
	public static void main(String[] args) {

		List<String> list = new ArrayList<String>();
		list.add("a");
		list.add("b");
		list.add("c");
		System.out.println("未修改前:");
		for (String s : list) {
			System.out.println(s);
		}

		list.set(0, "修改之后的元素");//修改对应的元素
		System.out.println("已修改后:");
		for (String s : list) {
			System.out.println(s);
		}
	}
}

四、查

 //存放的是对象的引用,没有重复对象
    Set set=new HashSet();
    String s1=new String("hello");
    String s2=s1;
    String s3=new String("world");
    set.add(s1);
    set.add(s2);
    set.add(s3);
    System.out.println(set.size());//打印集合中对象的数目为2

ArrayList底层实现

Modifier and TypeMethod and Description
booleanadd(E e)将指定的元素追加到此列表的末尾
voidadd(int index, E element)在此列表中的指定位置插入指定的元素。
booleanaddAll(Collection<? extends E> c)按指定集合的Iterator返回的顺序将指定集合中的所有元素追加到此列表的末尾。
booleanaddAll(int index, Collection<? extends E> c)将指定集合中的所有元素插入到此列表中,从指定的位置开始。
voidclear()从列表中删除所有元素。
booleancontains(Object o)如果此列表包含指定的元素,则返回 true 。
booleancontainsAll(collection<?> c)如果此列表包含指定 集合的所有元素,则返回 true 。
booleanequals(Object o)将指定的对象与列表进行比较以获得相等性
Eget(int index)返回此列表中指定位置的元素。
inthascCode()返回此列表中指定位置的元素。
intindexOf(Object o)返回此列表中指定元素的第一次出现的索引,如果此列表不包含元素,则返回-1。
booleanisEmpty()如果此列表不包含元素,则返回 true 。
Iteratoriterator()以正确的顺序返回该列表中的元素的迭代器。
intlastIndexOf(Object o)返回此列表中指定元素的最后一次出现的索引,如果此列表不包含元素,则返回-1。
ListIteratorlistIterator()返回列表中的列表迭代器(按适当的顺序)。
ListIteratorlistIterator(int index)从列表中的指定位置开始,返回列表中的元素(按正确顺序)的列表迭代器。
ElistIterator(int index)从列表中的指定位置开始,返回列表中的元素(按正确顺序)的列表迭代器。
booleanremove(Object o)从列表中删除指定元素的第一个出现(如果存在)。
booleanremoveAll(Collection<?> c)从此列表中删除指定集合中包含的所有元素。
protected voidremoveRange(int fromIndex, int toIndex)从这个列表中删除所有索引在 fromIndex (含)和 toIndex之间的元素。
booleanretainAll(Collection<?> c)仅保留此列表中包含在指定集合中的元素。
Eset(int index, E element)用指定的元素替换此列表中指定位置的元素。
intsize()返回此列表中的元素数。
voidsort(Comparator<? super E> c)使用提供的 Comparator对此列表进行排序以比较元素。
Spliteratorspliterator()在此列表中的元素上创建late-binding和故障快速 Spliterator 。
ListsubList(int fromIndex, int toIndex)返回此列表中指定的 fromIndex (包括)和 toIndex之间的独占视图。
Object[]toArray()以正确的顺序(从第一个到最后一个元素)返回一个包含此列表中所有元素的数组。
T[]toArray(T[] a)以正确的顺序返回一个包含此列表中所有元素的数组(从第一个到最后一个元素); 返回的数组的运行时类型是指定数组的运行时类型。
voidtrimToSize()修改这个 ArrayList实例的容量是列表的当前大小。
Objectclone()返回此 ArrayList实例的浅拷贝。

总结常用方法:

添加方法: add 、 add(int index, E element)、 addAll(Collection c)
删除方法: remove(int index),remove(Object o)、removeAll(Collection c), clear()
修改方法: set(int index, E element), replaceAll(UnaryOperator operator)
查询方法: get、indexOf(Object o)、lastIndexOf(Object o)、 subList(int fromIndex, int toIndex), size()
遍历方法: iterator(), listIterator() , listIterator(int index)
判断方法: isEmpty(), contains(Object o), containsAll(Collection c)
流操作方法: stream(), parallelStream()
排序方法: sort()
转换方法: toArray() 、toArray(T[] a)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值