ArrayList集合与List与数组的区别


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

public class Test {
	public static void main2(String[] args) {
		/* 1.说明什么是ArrayList集合
		 * ArrayList一般用于随机访问元素,虽然List也可以,但在List中间插入和移除元素时较慢。同时,ArrayList的操作不是线程安全的!
		 * 一般在单线程中才使用ArrayList,而在多线程中一般使用Vector或者CopyOnWriteArrayList。		 */	
		ArrayList<Integer> arrayList= new ArrayList<Integer>();
		System.out.println("往集合的第一个位置插入数字2");
		arrayList.add(0,2);
		System.out.println("往集合里插入数字4");
		arrayList.add(4);
		arrayList.add(2,6);
		arrayList.add(3,8);
		arrayList.add(4,10);
		arrayList.add(12);
		arrayList.add(10);
		System.out.println("删除集合里第3个元素");
		arrayList.remove(2);
		System.out.println("删除集合里的第一个包含的10的元素");
		arrayList.remove((Object)10);
		
		System.out.println("第一种:通过迭代器遍历");
		Iterator<Integer> it=arrayList.iterator();
		while(it.hasNext()) {
			System.out.println(it.next());
		}
		System.out.println("第二种:通过索引值遍历");
		for(int i=0; i <arrayList.size();i++) {
			System.out.println(arrayList.get(i));
		}
		System.out.println("第三种:for循环遍历");
		for(Integer number:arrayList) {
			System.out.println(number);
		}

		/*
		 * 2.将ArrayList集合转换成数组integer整型
		 * ArrayList 集合的底层是通过数组来实现的,但是集合与数组还是有一些区别的,
		 * 简单来说,集合的长度是可变的,而数组的长度是不可变的,通过这点可以引发出一点效率上的差异,
		 * 当所处理的数据长度已知不变时,推荐用数组对其进行处理,当长度不可预知时,也只好通过集合对其进行处理。*/	
		System.out.println("toArray用法");
		System.out.println("第一种方式(最常用)");
		Integer[] integer1 = arrayList.toArray(new Integer[0]);
		for(Integer i:integer1) {
			System.out.println(i);
		}
		 
		System.out.println("第二种方式(容易理解)");
		Integer[] integer2 = new Integer[arrayList.size()];
		arrayList.toArray(integer2);
		for(int i =0;i<integer2.length;i++) {
			System.out.println(integer2[i]);
		}
		
		System.out.println("判断集合是否包含数字4,如果包含显示true:"+arrayList.contains(4));
		arrayList.clear();
		System.out.println("判断集合是否为空,如果为空显示true:"+arrayList.isEmpty());
		
		/*3.将组数转换成集合*/
		String[] i ={"11","22","33"}; 
        List<String> list = Arrays.asList(i);
        for(Object o:list) {
        	System.out.println(o.toString());
        }
        
        Integer[] ob = {11,22,33};
        List<Integer> oblist = Arrays.asList(ob);
        Iterator<Integer> iterator=oblist.iterator();
		while(iterator.hasNext()) {
			System.out.println(iterator.next());
		}              
	}
}

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM