Android学习总结六:ArrayList动态数组、Foreach syntax

来源:互联网 发布:淘宝助理品牌怎么填 编辑:程序博客网 时间:2024/06/05 18:08

ArrayList动态数组:    

          ArrayList就是动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了动态的增加和减少元素,实现了ICollection和IList接口,灵活的设置数组的大小等好处。

          List 接口的大小可变数组的实现,位于API文档的java.util.ArrayList<E>。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。(此类大致上等同于 Vector 类,除了此类是不同步的。)

          size、isEmpty、get、set、iterator 和 listIterator 操作都以固定时间运行。add 操作以分摊的固定时间 运行,也就是说,添加 n 个元素需要 O(n) 时间。其他所有操作都以线性时间运行(大体上讲)。与用于 LinkedList 实现的常数因子相比,此实现的常数因子较低。

          每个 ArrayList 实例都有一个容量。该容量是指用来存储列表元素的数组的大小。它总是至少等于列表的大小。随着向 ArrayList 中不断添加元素,其容量也自动增长。并未指定增长策略的细节,因为这不只是添加元素会带来分摊固定时间开销那样简单。

         

Foreach syntax循环:

 
          例如 Row row 
          Row 是的类,row是类得对象
          比如 
          List<Row> rowList = new ArrayList<Row>();
          遍历就有两种方式
          1.就是
          for(int i = 0;i<rowList.size()-1;i++){
                //得到
                  Row row = new Row();
                    row = rowList.get(i);

          }
          2.forech
         for(Row row :rowList){
            //直接得到row对象

        }

2015.4.5

更新Foreach syntax

这是JDK5 中提供的新语法,for中包括两部分。第一部分是变量,第二部分是列表,表示对该列表中 变量进行循环。其中的列表必须为列表类型,可以是数组、Vector、List.

例:

public class ForEachFloat{    public static void main(Sring[] args)   {      Random random = new Random(47);     float f[] = new float[10];     for(int i = 0; i<10;i++)         f[i] = rand.nextFloat();     for(float x : f) //foreach syntax        System.out.println(x);   }}


 


0 0
原创粉丝点击