ArrayList 类

ArrayList 类

ArrayList 是list最常见的实现类,内部是通过数组实现的,它允许对元素的快速随机访问,当从arraylist 的中间位置插入或者删除元素时,需要对数组进行复制,移动,代价比较高。因此它适合随机查找和遍历,不适合插入和删除。
ArrayList的实质就是一个会自动增长的数组。它是利用封装的数组来实现的list接口,底层用数组来实现。随着向ArrayList中不断添加元素,其容量会自动增长。

ArrayList 类的构造方法

构造方法说 明
ArrayList()创建一个空的ArrayList对象
ArrayList(int size)创建一个指定大小的ArrayList对象
ArrayList(Collection c)创建指定集合的ArrayList对象

ArrayList 类的常用方法

方法说 明
Object[ ] toArray( )以数组形式返回ArrayList 中的元素
int siez( )返回当前ArrayList 中的元素数量
boolean add( Object o)将对象添加到ArrayList 的最后
boolean add( int index, Object o)在指定位置index上添加元素o
boolean addAll(Collection c)将集合C 中的素有元素添加到ArrayList 的最后
Object get(int index)返回ArrayList 中的指定位置
int indexOf(Object o)返回第一个出现元素o 的位置,否则返回-1
int lastIndexof(Object o )返回最后一个元素o的位置,否则返回-1
Object remove(int index)删除指定位置上的元素
Object set(int index, Object element)用元素element取代位置index上的元素,并且返回被取待的元素
Iterator iterator()返回一个迭代器,用来访问ArrayList中的各个元素

上代码:

package com.arraylist;

import java.util.ArrayList;
import java.util.ListIterator;
public class TextOne {
public static void main(String[] args) {	
	ArrayList   arrlt=new ArrayList();
		        arrlt.add("abc");
		        arrlt.add("你好");
		        arrlt.add(132);
		        arrlt.add(true);
		        arrlt.add("@#");
	  System.out.println("======长度==========");
	  System.out.println("arrlt长度为:"+arrlt.size());   
	  
	  System.out.println("=====输出集合===========");
	  System.out.println(arrlt);
	  System.out.println(arrlt.toString());  
	  
	  System.out.println("=====遍历集合===========");
	  
	  System.out.println("----普通for循环:----");
	  ListIterator  lit=arrlt.listIterator();
	  for (int i = 0; i < arrlt.size(); i++) {
		  System.out.println(lit.next());	
	  } 
	  System.out.println("----增强for循环:----");
	  for (Object object : arrlt) {
		  System.out.println(object);
	  }
	  
	  System.out.println("=====正向遍历集合==========="); 
	  
	  ListIterator  lit2=arrlt.listIterator();
	  while(lit2.hasNext()){
		  Object obj=lit2.next();
		  System.out.println(obj);	  
	  }
      System.out.println("=====倒序遍历集合===========");  
	 
	  while(lit.hasPrevious()){
		  Object obj=lit.previous();
		  System.out.println(obj);	  
	  }
   
	 System.out.println("=====截取集合中的某一片段(包头不包尾)===========");   
     System.out.println(arrlt.subList(1, 3));
     
     System.out.println("=====指定位置向后取值===========");  
     
     ListIterator  lit3=arrlt.listIterator(2);
     while(lit3.hasNext()){
		  Object obj=lit3.next();
		  System.out.println(obj);  
	  }
  	  
    System.out.println("=====指定位置向前取值(反向取值)===========");  
     ListIterator  lit4=arrlt.listIterator(2);
     while(lit4.hasPrevious()){
		  Object obj=lit4.previous();
		  System.out.println(obj);	  
	  }
     
     System.out.println("====删除===========");

     System.out.println("删除参数:"+arrlt.remove(2));
    
     System.out.println("删除后的集合:"+arrlt);
    
     System.out.println("====获取元素===========");

     System.out.println("获取元素:"+arrlt.get(1));
     
     System.out.println("====获取位置===========");

     System.out.println("获取元素位置:"+arrlt.indexOf("你好") );
    	
     System.out.println("====清空===========");
     arrlt.clear();
     System.out.println(arrlt);
   
	            
	}
}


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值