• ArrayList集合的特点和几种遍历方法


    public class temp {
    public static void main(String[] args)throws Exception {


    ArrayList 在定义时长度为空 ,在新增数据时默认长度为10, 当长度超过10的时候 ,增长因子数为0.5倍,向下取整数


      ArrayList arr=new ArrayList();

      arr.add("a");
      arr.add("b");
      arr.add("c");
      arr.add("d");
      arr.add("e");
      arr.add("f");
      System.out.println(arr.size());

    遍历方式
     A.下标输出方式
      for(int i=0; i<arr.size();i++) {
       System.out.println(arr.get(i));
    }



    B.foreach输出(>=jdk1.5)

      for (Object o : arr) {
       System.out.println(o);
    }



     C.1.8jdk的语法糖
      arr.forEach(a->System.out.println(a));
      System.out.println("----------迭代器");


     D.迭代器

    Iterator it=arr.iterator();

    while(it.hasNext()) {
       System.out.println(it.next());
      }


    ArrayList arr=new ArrayList(5);
    for(int i=0;i<20;i++) {
    print(arr);
       arr.add(i);
      }


    ArrayList arr=new ArrayList(5);
    arr.add("a");
    arr.add("b");
    arr.add("c");
    arr.add("d");
    arr.add("e");
    ListIterator list=arr.listIterator();


     1 读取下一个记录
    A. hasNext() 是否存在下一个记录
    B. Next() 取值

    向下读取
    while(list.hasNext()) {
    System.out.println(list.next());
    }

    // 2 读取上一个记录
    //A. hasPrevious() 是否存在上一个记录
    //B. Previous() 取值


    //向上读取
    while(list.hasPrevious()) {
    System.out.println(list.previous());
    }

    //栈 是一个车厢 最大容量 3M
    //堆 是一个火车 将内存中零散的空间组成的一张链式表格
    //实现自定义的栈 mystack


    }


    // 3 查看List源代码,ArrayList源代码
    //使用反射查看属性:
    static void print(ArrayList arraylist) throws Exception {
    Class c=arraylist.getClass();
    Field elementData=c.getDeclaredField("elementData");
    elementData.setAccessible(true);
    Object[] objects=(Object[])elementData.get(arraylist);
    System.out.println(objects.length);
    }

    }

  • 相关阅读:
    Visualvm 远程测试 问题
    jsp中文件下载的实现
    MYOB 的一些开发资料
    连接MYOB ODBC,在MyEclipse 下Commit成功,在Tomcat下单独运行,Commit显示Connection 已经关闭
    也说说学习
    objectivec static变量的使用总结
    objective里面的单例模式
    对函数式编程简单理解
    个人技术生涯的感悟(2)
    苹果键盘快捷键图标
  • 原文地址:https://www.cnblogs.com/liuwenwu9527/p/10885788.html
Copyright © 2020-2023  润新知