zoukankan      html  css  js  c++  java
  • java===集合框架之list体系

    通过这段时间对集合框架的学习,java中的常见容器基本学完,数组,stringbuilder,StringBuffer,集合

    集合笔记:

    package 集合框架1.arraylist;
    
    import java.util.ArrayList;
    import java.util.Collection;
    import java.util.Iterator;
    
    /**集合类的由来:
     * 对象用于封装特有数据,对象多了就需要存储,如果对象的个数不确定就是用集合容器进行存储。
     * 集合特点:
     * 1、用于存储对象的容器
     * 2、集合的长度是可变的
     * 3、集合中不可以存储基本数据类型值
     * 
     * 集合容器因为内部数据结构不同,有多种具体容器,
     * 不断向上抽取,就形成了集合框架
     * 框架的顶层Collection接口
     * Collection的常见方法:
     * 1、添加
     * boolean add(E e);
     * boolean addAll(Collection Coll);
     * 2、删除
     * boolean remove(Object obj);删除一个对象
     * boolean removeAll(Collection Coll);删除一堆对象
     * clear();全部删除
     * 3、判断包含关系
     * boolaen contains(Object obj);
     * boolean containsAll(Collection Coll);
     * boolean isEmpty();判断集合中是否有元素
     * 4、获取
     * int size();获取长度
     * Iterator iterator();返回的是迭代器对象;该对象必须依赖于具体的容器,因为每个容器的数据结构都不同,
     * 所以搞迭代器对象时容器中进行内部实现的。
     * 对于使用容器者而言,具体的实现不重要,只要通过容器获取到该实现的迭代器的对象即可,
     * 也就是iterator()方法。
     * 5、其它
     * boolean retainAll(Collection Coll);取交集
     * Object[] toArray();将集合转成数组
     * */
    public class JiHeDemo1 {
    
        public static void main(String[] args) {
            Collection<String> coll = new ArrayList<String>();
            show(coll);
            Collection<String> c1 = new ArrayList<String>();
            Iterator<String> i1=c1.iterator();
            while(i1.hasNext()){
                System.out.println(i1.next());
            }
            Collection<String> c2 = new ArrayList<String>();
            Iterator<String> i2=c2.iterator();
            while(i2.hasNext()){
                Object obj=i1.next();
                System.out.println(obj.toString());
            }
    
        }
        public static void show(Collection<String> c1,Collection<String> c2){
            c1.add("abc1");
            c1.add("abc2");
            c1.add("abc3");
            c1.add("abc4");
            
            c2.add("abc2");
            c2.add("abc5");
            c2.add("abc6");
            
            System.out.println("c1"+c1);
            System.out.println("c2"+c2);
            //演示addAll()
            c1.addAll(c2);
            //演示removeALL()
            boolean b1=c1.removeAll(c2);
            System.out.println("removeAll:"+b1);
            System.out.println("c1"+c1);
            //containsAll()
            boolean b2=c1.containsAll(c2);
            System.out.println(b2);
            //retainAll()
            boolean b3=c1.removeAll(c2);//与removeAll功能相反,取交集;
            System.out.println(b3+"	"+c1);
        }
        public static void show(Collection<String> coll){
            //1、添加元素。add
            coll.add("nba1");
            coll.add("nba2");
            coll.add("nba3");
            //2、删除元素 remove
            coll.remove("nba2");//会改变集合长度
            //清空集合
            coll.clear();
            //判断包含
            System.out.println(coll.contains("nba1"));
            System.out.println(coll);
        }
    
    }
    package 集合框架1.arraylist;
    
    import java.util.ArrayList;
    import java.util.List;
    import java.util.ListIterator;
    
    /**Collection
     * ---List:有序(按照存入先后存放,通过索引取出);元素可以重复
     * ---set :存入元素不能重复*/
    public class JiHeDemo2 {
    
        public static void main(String[] args) {
            List<String> list = new ArrayList<String>();
            show(list);
    
        }
    
        public static void show(List<String> list) {
            list.add("nba1");
            list.add("nba2");
            list.add("nba3");
            list.add("nba4");
            System.out.println(list);
            //插入元素
            list.add(1,"abc1");
            System.out.println(list);
            //删除
            list.remove(3);
            System.out.println(list);
            //判断
            boolean b1=list.contains("nba1");
            System.out.println(b1);
            boolean b2=list.isEmpty();
            System.out.println(b2);
            //取出
            //System.out.println(list.get(3));
            for(int x=0;x<list.size();x++){
                System.out.println(list.get(x));
            }
            
            for(ListIterator<String> li1 = list.listIterator();li1.hasNext();){
                
                System.out.print(li1.next().substring(0, 3)+",");
            }
        }
    
    }
  • 相关阅读:
    WPF 前台处理绑定字段
    DataBinding?资料绑定? #4绑定表达式原来可以这样用?(DataSet / DataReader)
    DataBinding?资料绑定? #7 伤脑筋的 GridView加总、小计(原来如此 / 范例下载)
    实战ASP.NET MVC 1.0 #3,新增一笔资料(Create / Add)
    实战ASP.NET MVC 1.0 #1,我的第一支MVC程序,展现所有数据(主细表的Master)
    ASP.NET MVC与Web Form的使用时机?
    实战ASP.NET MVC 2.0 #5,删除一笔记录
    DataBinding?资料绑定? #3以DropDownList为例
    DataBinding?资料绑定? #5绑定表达式 与 ListView的HyperLink(超级链接)
    DataBinding?资料绑定? #6 伤脑筋的 GridView加总、小计(Question)
  • 原文地址:https://www.cnblogs.com/wangyinxu/p/6737918.html
Copyright © 2011-2022 走看看