zoukankan      html  css  js  c++  java
  • java集合基础

    集合概念与作用

     1现实生活中把很多事物凑在一起就是集合。java中的集合类:是一种工具,就像是容器,存储任意数量的有共同属性的对象。

     2在类的内部,对数据进行组织;

       简单而快速的搜索大数量的条目

       有的集合借口,提供了一系列排列有序的元素,并且可以在序列中间快速的插入或者删除有关元素。

        有的集合接口,提供了映射关系,可以通过关键字去快速查找到对应的唯一对象,而这个关键字是可以是任意类型。

    3 Collection(List ,Queue,Set )

        1)List和Queue:排列有序的可以重复的

        2)Set:无序的

        3)常用的是List(序列),Set(集)

    ArrayList HashSet HashMap三个比较常用

      List接口,有序可重复,可以精确的控制每个元素的插入位置,或删除某个位置的元素

      ArrayList,数组序列,是List的一个重要实现,底层是有数组实现的。

      1)对象存入集合都会变成object类型,取出时需要类型转换

      2)add()添加一个值

           add("位置","值")添加到指定位置(当位置的值大于当前最大值,则会出现异常(indexOutOfBoundsException)) 

           addAll(Arrays.asList(数组));

         Course[] course={new Course("2", "java"),new Course("3", "english")}; 

          coursesToSelsct.addAll(Arrays.asList(course));

      3)取得List中元素的方法

          先获得List的长度,size()

          然后用get();

      

      通过迭代器遍历List

    迭代器不具备存储功能,依赖于某个集合存在,不能单独存在。还有另一种方法for each()

         Iterator it=coursesToSelect.Iterator()

         while(it.hashNext())

      {

        course cr=(course)it.next();    

      }

          for(Object obj:courseToSelect)//放入到集合中自动变成、object类型

          

        5)修改List中的元素Set(“索引位置”,“新元素”)方法

           

        6)删除List中的元素remove()&removeAll()

            删除前先同get(“位置”)获取对应的元素,打印输出

            remove((Course)courseToSelect.get("位置"))

       

      removeAll(),其中arraysList.asList()方法是用来把数组转化为集合类型

           

          7)泛型,往集合中添加特定的类型的对象,会在编译期间进行类型检查,可以直接指定类型获取集合元素(不需要进行类型转换)

            public List<Course> course

         public TestGeneric(){

          this.course=new ArrayList<Course>();

        }

            泛型中可存入其子类型的对象实例

            泛型中的限定类型不能使用基本类型。

            List<int> list=new ArrayList<int>()-->错的,int是基本类型

            List<Intger> list=new ArrayList<Integer>()

    Set接口及其实现类--HashSet(没有类似List提供Set()方法修改数据)

         1)set中没有get()方法,只能用foreach,iterator方法遍历出每一个数据,且执行两次可能得到结果的顺序不一致

         2)set集合无序,不可重复 。保存的是唯一独有的一个数据对象引用,并且可以添加一个null

           

  • 相关阅读:
    SQL Server 之 在与SQLServer建立连接时出现与网络相关的或特定于实例的错误
    T-SQL 之 概述
    HTML 之 Web页面表单form中只有一个input的text元素,按回车默认提交
    CollatingOfData 之 JsonHelper
    JavaScript 之 弹出窗口总结
    JavaScript 之 页面跳转及Frame动态加载
    XML 之 与Json或String的相互转换
    UML 之 类图(Class Dragram)
    Asp.Net 之 调用分享接口
    echo print() print_r() var_dump()的区别
  • 原文地址:https://www.cnblogs.com/lx-1024/p/6701979.html
Copyright © 2011-2022 走看看