首页 > 其他 > 详细

集合框架

时间:2020-06-27 10:20:58      阅读:67      评论:0      收藏:0      [点我收藏+]

Collection集合 (不唯一,无序):

 

1.List集合(不唯一、有序):

1.1ArrayList集合

1.2LinkedList集合

 

2.Set集合(唯一、无序)

 

ArrayList和LinkedList

存储方式:

ArrayList:长度可变的数组,存储空间连续

LinkedList集合:链表式结构存储

 

执行效率:

ArrayList:遍历和随机访问效率高

LinkedList集合:插入和删除效率高

 

遍历集合的方法

1.增强for循环遍历

2.迭代器Iterator遍历

public class TestDog {
    
    @Test 
    public void test04(){
        
        //创建对象
        Dog meimei = new Dog("美美","贵宾犬");
        Dog feifei = new Dog("菲菲","蝴蝶犬");
        Dog dahuang = new Dog("大黄","金毛");
        Dog xiaohei = new Dog("小黑","藏獒");
        
        Map map = new HashMap<>();
        map.put(meimei.getName(), meimei);
        map.put(feifei.getName(), feifei);
        map.put(dahuang.getName(), dahuang);
        map.put(xiaohei.getName(), xiaohei);
        
        Set keySet = map.keySet();
        Iterator it = keySet.iterator();
        while(it.hasNext()){
            String  key = (String)it.next();
            Dog dog = (Dog)map.get(key);
            System.out.println(dog.getName()+" "+dog.getStrain());
        }
        
        for(Object key : keySet){
            Dog dog = (Dog)map.get(key);
            System.out.println(dog.getName()+" "+dog.getStrain());
        }
        
    }
    
    @Test
    public void test03(){
        
        Map map = new HashMap();
        //增加数据
        map.put("疾风剑豪", "亚索");
        map.put("暗夜猎手", "薇恩");
        map.put("盲僧", "李青"); 
        //获取长度
        System.out.println(map.size());
        //根据key获取values
        String str = (String)map.get("疾风剑豪");
        System.out.println(str);
        //移除某个key
        map.remove("疾风剑豪");
        //判断是否包含某个key
        System.out.println(map.containsKey("疾风剑豪"));
        //获取所有的值
        System.out.println(map.values());
        System.out.println(map.keySet());
        
        
    }
    
    @Test
    public void test02(){
        
        //创建对象
                Dog meimei = new Dog("美美","贵宾犬");
                Dog feifei = new Dog("菲菲","蝴蝶犬");
                Dog dahuang = new Dog("大黄","金毛");
                Dog xiaohei = new Dog("小黑","藏獒");
        //创建数组对象
                LinkedList list = new LinkedList<>();    
                list.add(feifei);
                list.add(meimei);
                list.addFirst(xiaohei);
                
                for(int i = 0; i < list.size(); i++){
                    Dog d = (Dog) list.get(i);
                    System.out.println(d.getName()+"\t"+d.getStrain());
                }
                System.out.println("==============");
                list.addLast(dahuang);
                for(int i = 0; i < list.size(); i++){
                    Dog d = (Dog) list.get(i);
                    System.out.println(d.getName()+"\t"+d.getStrain());
                }
                
                System.out.println(list.getFirst());
                System.out.println(list.getLast());
                
                System.out.println("==============");
                list.removeFirst();
                list.removeLast();            
                for(int i = 0; i < list.size(); i++){
                    Dog d = (Dog) list.get(i);
                    System.out.println(d.getName()+"\t"+d.getStrain());
                }
                
    }
    
    @Test
    public void test01(){
        //创建对象
        Dog meimei = new Dog("美美","贵宾犬");
        Dog feifei = new Dog("菲菲","蝴蝶犬");
        Dog dahuang = new Dog("大黄","金毛");
        Dog xiaohei = new Dog("小黑","藏獒");
        //创建数组对象
        List list = new ArrayList();        
        list.add(meimei);
        list.add(feifei);
        list.add(xiaohei);
        //打印数组长度
        System.out.println(list.size());
        //遍历数组
        for(int i = 0; i < list.size(); i++){
            Dog d = (Dog) list.get(i);
            System.out.println(d.getName()+"\t"+d.getStrain());
        }
        System.out.println("=========");
        
        list.add(0, dahuang);//第一位增加大黄
        for(int i = 0; i < list.size(); i++){
            Dog d = (Dog) list.get(i);
            System.out.println(d.getName()+"\t"+d.getStrain());
        }
        System.out.println("=========");
        
        list.remove(0);//删除0号元素
        for(int i = 0; i < list.size(); i++){
            Dog d = (Dog) list.get(i);
            System.out.println(d.getName()+"\t"+d.getStrain());
        }
        //判断是否有此元素
        System.out.println(list.contains(xiaohei));
        
    }

}

 

集合框架

原文:https://www.cnblogs.com/zl225/p/13197385.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!