zoukankan      html  css  js  c++  java
  • 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());
    		}              
    	}
    }
    

      

  • 相关阅读:
    51nod 1117 聪明的木匠:哈夫曼树
    51nod 1010 只包含因子2 3 5的数
    51nod 2636 卡车加油
    51nod 2989 组合数
    51nod 2652 阶乘0的数量 V2
    51nod 1103 N的倍数
    51nod 2489 小b和灯泡
    51nod 1003 阶乘后面0的数量
    51nod 2122 分解质因数
    javascript中的setter和getter
  • 原文地址:https://www.cnblogs.com/amoyzhu/p/8435496.html
Copyright © 2011-2022 走看看