zoukankan      html  css  js  c++  java
  • 集合

    java集合中提供了一套优良的接口、类,它们位于util包中,只需导入即可。

    image

    Collection 接口:定义了存取一组对象的方法,子接口set、list、Map存储方法。

    一、set 中数据对象没有顺序,而且不可重复。

    二、list 中数据对象有顺序,可重复。

    Map 接口:定义了存储“健Key”,“value”映射的方法

    Arraylist :底层实现数组,线程不安全,效率高,查询快,修改、插入、删除慢!

    LinkeList:底层链表,线程不安全,效率高,查询慢,修改、插入、删除快!

    vector:线程安全,效率高

    1、list:不唯一,有序

               arraylist:元素不唯一,有序列,遍历元素访问,随机访问效率高

               linkelist:链表存储元素,唯一,删除、修改效率高

    2、set:唯一,无序列

               hashSet:

               treeSet:

    3、Map存储一组对象,提供键值对保存

               hashMap:允许null值

               treeMap:不允许null值

    三、ArrayList常用方法:

    add();在尾部追加一个元素,

    size();获取有效的元素个数

    add(int,index);

    clear();移除所有

    get(index);指定获取

    Remoe(index);按指定的下标进行移除

    isEmpty();判断是否为空

    boolean contains(object o);判断列表中是否存在指定的元素

    set(index,e)指定的元素下标,替换该位置的元素

    四、linkelist常用方法:插入、删除频繁操作

    void addFirst(object o)在列表头部添加元素

    void addlast(object o)在尾部添加

    Objest getFirst()返回列表中第一个元素

    Objest getLast() 返回列表中最后一个元素

    Objest removeFirst()删除列表中第一个开头的元素

    Objest removeLast()删除列表中最后的一个元素

    五.Set迭代器方法

    实现类:HashSet、TreeSet

    使用步骤:

    1.创建 Set set = new HashSet()

    2.常用方法:

    set.add(Objest o);往set集合中添加对象

    set.Size()返回有效的集合对象

    注意:set中没有get方法,使用迭代器访问数据

    1.创建迭代器:lterator  i = set.iterator();

    常用方法:hasNext();判断迭代器中是否拥有下一条数据。

    Next();获取吓一跳数据。

    迭代方法①

    for(Objest objest : set){对象 对象名 : 集合

    Integer i = (Integer)objest;类型强制转换

    }

    迭代方法②

    Iterator i = set.iterator();创建迭代器

    while(i.hasNext()){ 判断是否有吓一跳数据

    Integer num = (Integer)i.next(); 获取下一条数据

    }

    迭代方法③

    for(Iterator it = set.itergor()//获取迭代器; it.hasNext();获取下一条数据){

    Objest对象 objest = (Objest对象)it.next();强制转换

    }

    六.Map接口

    常用方法:

    put("键值key","value元素");使用键值对储存数据

    get(键值key);获取元素值

    remove(键值key);删除元素

    containskey(键值key);判断是否有指定的元素

    size();返回有效的集合元素

    keySet();返回键集合值

    values();返回键值对集合

    七.泛型

    1.作用:控制集合中存放的数据,

    List<Objest o> Li = new ArralList<Objest o>()

    2.问题:泛型中如何存放多种对象

    用多态、接口

    List<Objest父类、接口类 o> Li = new ArralList<Objest父类、接口类 o>()

    Li.add(子类、接口类)

    泛型指定是父类,那么所有该父类的子类则都可以通过检查

    泛型指定的是接口,那么所有该接口的实现类都可以通过检查

  • 相关阅读:
    4-9 内置函数和匿名函数的题
    4-09 试题
    4--2日 函数 装饰器 作业题
    if 语句
    4-4日 内置函数,匿名函数
    4-4日 列表推导式,生成器推导式
    4-3日 迭代器 生成器
    4-2日装饰器,带参数的装饰器
    python 函数名 、闭包 装饰器 day13
    [LeetCode]-DataBase-Department Top Three Salaries
  • 原文地址:https://www.cnblogs.com/xxt19970908/p/5281566.html
Copyright © 2011-2022 走看看