• 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());
    		}              
    	}
    }
    

      

  • 相关阅读:
    洛谷 P5249 [LnOI2019]加特林轮盘赌 概率DP
    c++提高学习笔记——05-c++STLday10
    c++基础学习笔记——04-c++day09
    c++基础学习笔记——04-c++day08
    c++基础学习笔记——04-c++day07
    c++基础学习笔记——04-c++day06
    c++基础学习笔记——04-c++day05
    c++基础学习笔记——04-c++day04
    c++基础学习笔记——04-c++day03
    c++基础学习笔记——04-c++day02
  • 原文地址:https://www.cnblogs.com/amoyzhu/p/8435496.html
Copyright © 2020-2023  润新知