Demo18_集合框架02

package test09;


import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class Demo18_集合框架02 {

    @SuppressWarnings({ "rawtypes", "unchecked" })
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        /*集合(数据结构不同)的取出方式
         *取元素
         *无论是什么数据结构,最终共性的取出方式 一个一个取  取之前先判断
         *有就取一个,没有就结束    这种方式称之为:迭代
         *迭代器: iterator
         *iterator(); : 获取到具体容器的迭代器对象
         *
         *细节:
         *集合存储的其实是对象的地址
         *集合不可以存储基础数值  但是可以这么写,但是存储的还是对象(自动装箱)
         *存储时提升了Object,在取出时使用元素的特有内容,必须要向下转型
         *
         *collection :
         *List: 有序的列表(元素允许重复)  此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。
         *Set
         *
         *List接口
         *其特有的方法全都是围绕着索引定义的
         *
         *
         *list获取元素的方式有两种
         *迭代     遍历+get方法
         *
         *list 接口是支持对元素的增a删d改s查的
         */
//      创建集合对象
        Collection coll = new ArrayList();
        coll.add("das1");//存储的是对象的引用(地址),不能存储基本数值
        coll.add("das2");
//      coll.add(3);//coll.add(Integer.ValueOf(3));  自动装箱(基本数值包装成对象)
        coll.add("das3");
        coll.add("das4");
//      获取容器的迭代器对象,通过iterator方法
//      Iterator it = coll.iterator();
//      使用具体的迭代器方法获取集合中的元素,参阅迭代器的方法
        /*while(it.hasNext()){
            System.out.println(it.next());  
        }*/
        for (Iterator it = coll.iterator(); it.hasNext();) {
            System.out.println(it.next());  
        }

        /*System.out.println(it.next());
        System.out.println(it.next());
        System.out.println(it.next());
        System.out.println(it.next());*/
//      System.out.println(it.next());//java.util.NoSuchElementException没有这个元素异常  不存在第五个元素
        System.out.println("-------获取内部元素长度-------");
        coll.add("sdasdsad");//Object obj = "sdasdsad";提升为了Object
        coll.add("hehe");
        coll.add("sdk");
        for (Iterator it = coll.iterator(); it.hasNext();) {
            Object object = it.next();//取出来的都是object,需要用元素的特有方法时需要向下转型
            String str = (String)object;
            System.out.println(str.length());
        }


    }

}

猜你喜欢

转载自blog.csdn.net/mingxu_W/article/details/82016350