list集合特点
/**
@作者:WangQi
@创建时间:2020年8月17日下午2:12:24
@代码说明:list集合特点:元素有序,允许重复元素,可以存放多个null
package cn.tedu.Collection;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
public class Test2_List {
public static void main(String[] args) {
//1创建对象---泛型用来约束集合中的元素类型,但只能写引用类型
List <Integer>list=new ArrayList();
//2.调用方法
list.add(1);
list.add(2);
list.add(null);
list.add(1);
list.add(2);
list.add(null);
list.add(2,100);//在指定下标处,插入指定元素
System.out.println(list.get(5));//获取下标为5的位置对应元素
System.out.println(list.indexOf(2));//获取数字2第一次出现的索引值
System.out.println(list.lastIndexOf(1));//获取数字1最后一次出现的索引值
System.out.println(list.set(1, 99));//把下标为1的元素置换成99
System.out.println(list.equals(1));//判断集合是否和指定元素相等
System.out.println(list.hashCode());//返回哈希码值
System.out.println(list.isEmpty());//判断集合是否为空
System.out.println(list.remove(1));//删除下标指定位置元素
System.out.println(list.size());//过去集合中元素的个数
System.out.println(list.contains(1));//集合中是否包含
List<Integer>list2=list.subList(2, 5);//按照从下标2开始,到下标5结束进行截取(含头不含尾)
//继承Collection接口的方法
Iterator<Integer> it = list.iterator();
while(it.hasNext()) {//判断有没有元素
System.out.println(it.next());//直接获取元素
}
//Iterator<E>iterator()和ListIterator<E>listIterator()的返回值一个是父接口一个是子接口
//子接口丰富了遍历方式,除了顺序向后遍历还可以逆向向前遍历
//list接口特有方法:ListIterator<E>listIterator()
ListIterator<Integer>it2=list.listIterator();
while(it2.hasNext()) {//判断是否有 后一个元素
System.out.println(it2.next());//获取后一个元素
}
//list接口特点是元素有下标,还可以按照下标获取元素
for(int i = 0; i < list.size(); i++) {
Integer in=list.get(i);//根据下标获取元素
System.out.println(in);
}
//增强for循环--foreach循环用来优化普通的for循环,可以用于遍历数组或者
//Collection集合的,好处是高效而且语法简洁
//for(遍历得到的数据得类型 变量名:你想要遍历的数组|Collection集合){循环体}
for (Integer in : list) {//in就代表遍历得到的数据
System.out.println(in);
}
}
}