zoukankan      html  css  js  c++  java
  • 集合框架(二)

    java集合框架分为两大类接口: 

    Collection    Map

    其中Collection又有二个子接口:List和Set

    共同点:都是集合接口,都可以用来存储很多对象.

    区别:

    1)Collection接口存储一组不唯一(允许重复).无序的对象,

    2)Set接口继承Collection接口,存储一组唯一(不允许重复).无序的对象.

    3)List接口继承Collection接口,存储一组不唯一(允许重复).无序(以元素插入的次序来放置元素,不会重新排列)的对象.

    4)Map接口存储一组成对的键-值对象,提供key(键)到value(值)的映射.

    Map中的key不要求有序,不允许重复.value同样不要求有序,允许重复

    Collection接口: 

        Set接口:

           HashSet集合类

            LinkedHashSet集合类

            TreeSet集合类

        List接口: 
            ArrayList集合类

            LinkedList集合类

            Vector集合类

    Map接口:
         HashMap集合类
           TreeMap集合类

    ArrayList集合类的用法

    优点:

    1)可以灵活的插入元素
    1)可以灵活的删除元素

    各种常用的方法:

    1)boolean  add(Object  o) 在列表末尾顺序添加元素,起始索引位置从0开始

    void add(int  index  ,Object o)  在指定位置添加元素

    int size()  返回列表中的元素个数

    Object get(int index)  返回指定索引位置的元素

    boolean  contains(Object  o) 判断表中是否存在指定元素

    boolean remove(Object  o)从列表中删除元素

    Object  remove(int index)  从列表中删除指定位置的元素,起始索引位置从0开始

    import java.util.*;
    public class Test01 {
    public static void main(String[] args) {
    Dog dog1=new Dog("偶偶","雪纳瑞");
    Dog dog2=new Dog("菲菲","藏獒");
    Dog dog3=new Dog("美美","布拉不多");
    Dog dog4=new Dog("fei","布拉不多");
    List<Dog> list=new ArrayList<Dog>();
    list.add(dog1);
    //void add(int index ,Object o) 在指定位置添加元素
    list.add(1,dog2);//下标从0开始
    list.add(dog3);
    list.add(dog4);
    //int size() 返回列表中的元素个数  size()的用法
    System.out.println("总共有"+list.size()+"条狗狗");
    //遍历狗狗信息
    for (int i = 0; i < list.size(); i++) {
    Dog dog = list.get(i);
    System.out.println(dog.getName()+" "+dog.getStrain());
    }
    /**
    * 删除狗狗信息
    * boolean remove(Object o)从列表中删除元素

    *Object  remove(int index)  从列表中删除指定位置的元素,起始索引位置从0开始
    */
    list.remove(1);
    list.remove(dog4);
    System.out.println("删除后剩余"+list.size()+"条狗狗");
    //显示删除后剩余狗狗的信息
    for (int i = 0; i < list.size(); i++) {
    Dog dog = list.get(i);
    System.out.println(dog.getName()+" "+dog.getStrain());

    }
    //boolean contains(Object o) 判断表中是否存在指定元素
    if(list.contains(dog3)){
    System.out.println("集合中包含dog3的信息");
    }else{
    System.out.println("集合中不包含dog3的信息");
    }
    }

    }

    LinkedList集合类的用法

    LinkedList的特殊用法:

    void  addFirst(Object o)  在列表的首部添加元素

    void  addLast(Object o)  在列表的末尾添加元素

    Object  getFirst()   返回列表的第一个元素`

    Object  getLast() 返回列表的最后一个元素`

    Object removeFirst() 删除并返回列表中的第一个元素

    Object removeLast() 删除并返回列表中的最后一个元素

     

    import java.util.LinkedList;
    public class Test02 {
    public static void main(String[] args) {
    Dog dog1=new Dog("偶偶","雪纳瑞");
    Dog dog2=new Dog("菲菲","藏獒");
    Dog dog3=new Dog("美美","布拉不多");
    Dog dog4=new Dog("fei","布拉不多");
    LinkedList<Dog> list=new LinkedList<Dog>();
    list.add(dog1);
    //void add(int index ,Object o) 在指定位置添加元素
    list.add(1,dog2);//下标从0开始
    //void addLast(Object o) 在列表的末尾添加元素
    list.addLast(dog3);
    //void addFirst(Object o) 在列表的首部添加元素
    list.addFirst(dog4);
    //查看第一条狗狗的信息
    Dog first = list.getFirst();
    System.out.println("第一条狗狗的昵称"+first.getName());
    //删除第一条狗狗和最后一条狗狗
    list.removeFirst();
    list.removeLast();
    System.out.println("删除后剩余"+list.size()+"条狗狗");
    //显示删除后剩余狗狗的信息
    for (int i = 0; i < list.size(); i++) {
    Dog dog = list.get(i);
    System.out.println(dog.getName()+" "+dog.getStrain());

    }
    }

    }

  • 相关阅读:
    正则表达式() [] {}区别
    JAVA int自动装箱
    Intellij Idea debug 远程部署的的tomcat项目
    TensorFlow MNIST CNN 代码
    线性代数-01-向量究竟是什么
    线性代数-线性代数的本质
    TensorFlow MNIST 入门 代码
    TensorFlow 学习可视化 TensorBoard 简易教程
    TensorFlow 函数
    TensorFlow Demo2
  • 原文地址:https://www.cnblogs.com/sujulin/p/6665539.html
Copyright © 2011-2022 走看看