zoukankan      html  css  js  c++  java
  • Java基础之集合框架(Collection接口和List接口)

    首先我们说说集合有什么作用。

    一、集合的作用

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

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

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

    例如:做广播操的时候,可以将学生插入到某排某列,反之也可以叫某排某列中的学生出列。

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

    例如:在吃饭的时候,众多铝饭盒中如何区别是自己的呢?在饭盒上刻独有的标志或贴纸条,这个标志和纸条就是我们所说的关键字。

    二、集合和数组的区别

    1、数组长度和容量是固定的,而集合是动态扩展的

    2、数组只能通过下标访问元素,类型固定,而集合可以通过任意类型查找所映射的具体对象

    三、集合框架

    java集合框架中比较常用的有2个主要接口:Collection接口和Map接口。

    Collection接口的三个主要子接口:

    1、List:排列有序、可重复,它的实现类是ArrayList、LinkedList

    2、Queue:排列有序、可重复,它的实现类是LinkedList

    3、Set:无序、不可重复,它的实现类是HashSet

    四、案例展示

    我们建一个学生选课的工程,展示一下添加课程的功能,所以要建3个类,分别是Student类、Course类、ListTest类

    Course类 

    package com.zm.collection;

    public class Course {   

    public String id;  

    public String name;      

    public Course(String id, String name){      

    this.id=id;    

    this.name=name;    

    }

    }

    Student类

    package com.zm.collection;

    import java.util.HashSet;

    import java.util.Set;

    public class Student {  

    public String id;  

    public String name;  

    public Set courses;    

    public Student(String id,String name){   

    this.id=id;   

    this.name=name;   

    this.courses=new HashSet();//不能直接实例化set,因为set是一个接口,通过HashSet()进行实例化。  

    }

    }

    ListTest类

    package com.zm.collection;

    /**  

    * 被选课程  

    */

    import java.util.ArrayList; import java.util.List;

    public class ListTest {  

    /**  

    * 用于存放被选课程的List  

    */

    public List coursesToSelect;    

    public ListTest(){   

    this.coursesToSelect=new ArrayList();  

    }    

    public void testAdd(){   

    //添加的第一种方法

    Course cr1=new Course("1","数据结构");   

    coursesToSelect.add(cr1);  

    Course temp=(Course)coursesToSelect.get(0);   

    System.out.println("添加了课程:"+temp.id+":"+temp.name);

    //添加的第二种方法   

    Course cr2=new Course("2","C语言");   

    coursesToSelect.add(0, cr2);   

    Course temp2=(Course)coursesToSelect.get(0);//对象存入集合都变成了Object类型,取出时也是Obeject类型,所以需要类型转换成Course类。   

    System.out.println("添加了课程:"+temp2.id+":"+temp2.name);     

    }

     public static void main(String[]args){   

    ListTest lt =new ListTest();   

    lt.testAdd();  

    }

    }

    五、总结

    通过以上例子我们可以看出,大致分为以下几个步骤:

    1、创建一个类

    2、添加该类的属性

    3、创建含参构造器(构造方法:为了创建对象并初始化对象的值)

    ①、将第2步创建的属性传递给构造方法,例如:

    public Student(String id,String name){  

    this.id=id;  

    this.name=name;  

    ②、把传递给构造方法的id值赋给新对象的id值。

    4、创建方法

    ①、给这个方法创建实例对象

    ②、采用   对象名.方法名()   来把实例传递进去

    5、创建main主方法

    ①、给这个方法创建实例对象

    ②、调用第4步骤的方法

  • 相关阅读:
    tomcat启动失败日志
    Windows环境卸载tomcat
    JAVA教程_Windows环境Java安装部署教程
    Tomcat和JDK版本的对应关系
    tomcat启动窗口乱码问题_解决办法
    Windows环境Tomcat安装及环境部署_官方教程
    perl + 匹配前导模式一次或者多次
    5.3.5 聚簇索引:
    freshStartTail 第一次启动时 抛弃旧的日志
    tomcat docBase 和 path
  • 原文地址:https://www.cnblogs.com/huhyoung/p/6103000.html
Copyright © 2011-2022 走看看