Java——List集合

package om.hanqi.test;

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

public class Test01 {

    public static void main(String[] args) {

        //List 集合
        //List是接口,表示数据列表
        //可变数组:有序,长度可变
        //<>代表泛型,在定义集合是确定中的数据类型,jdk1.5之后才能加入的
        //需要用实现类型进行实例化
        
        List<String> ls = new ArrayList<>();  //明确了数据类型
        
        List ls1 = new ArrayList();  //不能确定集合的数据类型
        
        //把数据放入集合
        //使用明确的类型接受数据
        ls.add("asd");
        
        
        //只能使用object类型接受数据
        ls1.add(232332);
        
        List<Integer> ls2=new ArrayList<>();
        
        ls2.add(123);

    }

}
package exception;

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

public class Test021 {

    public static void main(String[] args) {

        //List集合,存放的数据是Person及子类的实例
        List<Person> lsp=new ArrayList <Person>();
        
        //添加数据
        Person p5=new Person("A",20);
        lsp.add(p5);
        lsp.add(new Person("a",20));
        lsp.add(new Person("b",20));
        lsp.add(new Person("c",20));
        lsp.add(p5);
        //添加子类的实力
        
        lsp.add(new Student("e",20));
        
        //插入数据
        lsp.add(3, new Person("D",21));
        
        
        //获取长度
        System.out.println(lsp.size());
        
        //查询数据,查找某个数据所在位置的索引
        System.out.println(lsp.indexOf(p5));
        
        //判断是否存在
        System.out.println("判断是否存在="+lsp.contains(p5));
        
        //遍历集合
        //1、for循环
        for(int i=0;i<lsp.size();i++)
        {
            System.out.println(lsp.get(i));
        }
        //2、foreach
        System.out.println("foreach方式");
        for(Person p:lsp)
        {
            System.out.println(p);
        }
        //3、迭代器
        System.out.println("迭代器方式");
        //获取迭代器
        //可以看做是一个指针
        //获取迭代器是,指针处于第一条记录的前面,在集合外面
        Iterator<Person> it= lsp.iterator();
        //判断能否移动
        while(it.hasNext())
        {
            //移动指针到下一条数据,同事获取数据
            Person p=it.next();
            System.out.println(p);
            
            //移除数据
            if(p==p5){
            it.remove();}
        }
        
        
        //获取数据
        Person p3=lsp.get(3);
        
        //显示对象的所有属性的值
        System.out.println(p3);
        
        //修改数据
        lsp.set(0, new Person("F",30));
        
        
        //移除数据
        lsp.remove(1);
        System.out.println("size()="+lsp.size());
        
        //清除数据
        lsp.clear();
        System.out.println("size()="+lsp.size());
        
        
        
        

    }

}
原文地址:https://www.cnblogs.com/zs6666/p/5902437.html