ArrayList的增 删 改 查

本节的代码主要使用并实现List接口的ArrayList类。
主要的功能和方法如下:
*使用ArrayList()的构造方法构造一个初始容量为10的空列表
*使用ArrayList(int initialCapaity)构造方法,构造具有初始容量的空列表

*当需要存储大量数据时有必要使用ensureCapacity(int minCapacity)方法增加此ArrayList实际的容量,以确保他至少能够容量最小容量参数所指定的元素数,减少递增分配的数量,提高效率

*add(E element)添加任意类型的数据,也可以在指定位置添加元素,add(int dex,E element)注意:索引值加一的地方才是要插入的位置

*remove(int index)删除指定位置元素,remove(E element)方法是删除指定元素

*用size()方法查看list()的元素个数

*set(int index ,E element)元素替代指定位置元素

*用for循环直接通过下标访问集合

*使用Iterator迭代器访问集合。Iterator(E)接口是可以迭代的,在java.lang包中,表示对象可以用迭代的方式循环访问。Collection的所有子类都实现了Iterator接口。Iterator是迭代器,在java.lang.Iterator包中,Iterator iterator()返回一个迭代器

     迭代器实际上调用3种方法

   ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

   boolean hasNext();//如果仍有元素,返回true

  E.next();//返回迭代的下一个元素

  void remove();//从迭代器指向的集合中移除迭代器返回的最后一个元素(可选操作)//每次调用next只能调用一次此方法

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

使用for each循环访问集合

代码实现:

package qtech.edu.cn;

import java.util.List;
import java.util.ArrayList;
import java.util.Iterator;
public class ArrayListText {
     public static void main(String[] args)
     {
         List list = new ArrayList();//构造名为list,初始容量为10的空列表
    	 //List list = new ArrayList(20);构造具有初始容量20的空列表
    	 //ensureCapacity(int minCapacity)
    	 //list.ensureCapacity(1000)//指明初始容量,存大数据时提高效率
    	 list.add("Jack");
    	 list.add("Jet");
    	 list.add("Jack");
    	 list.add("Kitty");
    	 list.add(5);
    	 list.add(3.14);
    	 list.add(3,"hello");//在索引值3的位置添加字符串hello
    	 list.remove("Kitty");//将字符串"Kitty"删去
    	 list.set(1,"coco");//用指定的字符出串‘coco’替代索引值为1的位置
    	 System.out.println(list.get(1));
    	 System.out.println(list.get(3));//输出索引值为3的元素
    	 System.out.println("***********");
    	 for(int i=0;i<list.size();i++)
    	 {
    		 System.out.println(list.get(i));
    	 }
    	 //使用lterator的方式访问
    	 System.out.println("***********");
    	 Iterator it = list.iterator();//返回一个迭代器对象
    	 while(it.hasNext())//当迭代器还有下一个对象时
    	 {
    		 System.out.println(it.next());//打印输出
    	 }
    	 //使用for-each循环访问
    	 for(Object obj:list)
    	 {
    		 System.out.println(obj);
    	 }
     }
}
/*coco
hello
***********
Jack
coco
Jack
hello
5
3.14
***********
Jack
coco
Jack
hello
5
3.14
Jack
coco
Jack
hello
5
3.14*/



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值