关于集合框的总结

                         关于集合框架的总结

一:集合框架的四种类型:1Set  2:List  3:Map   4:队列

1:Set******************

Set类型的特点:1.无序的                2.不能有重复的数据

               3.不能使用索引来获取    4.如果要获取数据必须使用迭代器。

 重要方法:1Iterator<E>  iterator()  --------得到集合的迭代对象

 截取程序示例:

  Iterator<Student> iter = cl.iterator();

//遍历

while(iter.hasNext()){

Student stu = iter.next();

2void clear()  -------清除集合中的所有对象,执行过后,集合中不在装有对象

3:boolean remove(Object o)

ClassCastException  如果所要移除的元素于此类型不符,将出现此错误;

如所要移除的元素为null,则会出现空指针异常。 

4int size( ) ------返回集合元素的个数

注意:Set是一个接口定义,所以我们只能用它的实现子类

2:List **************  

List类型的特点 1.有序的   2:是使用数组来实现的

重要方法:具有增删查改的方法,与Set型类似

Indexof(Object o)-----索引队列第一次经过该元素的位置,如果无此元素,将返回-1

Set(index,E element)------用指定元素替换指定位置的元素

程序截取示例:Student temp=list.get(i);

       list.set(i, list.get(min));

       list.set(min, temp);

  
size()-------------返回队列总元素

get(int index)---------------获取指定位置的元素

3.Map********************

 特点: 1.键值对方式存储数据。

2.只要键不同,那么值是可以相同的。

    3将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。

重要方法:get(Object key)------ 返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null

     put(K key ,V value)------ 将指定的值与此映射中的指定键关联(可选操作)。

      keySet()-----返回此映射中包含的键的 Set 视图。

程序截取示例:

      for (int i = 0; i < 5; i++) {

Student stu = new Student("学生" + (char) (i + 65), i);

map.put("学生" + (char) (i + 65), stu);

}  

自定义队列  特点:属于线性结构,能进行队列的删减增查,先定义一个接口,再让一个类来实现该接口

程序截取示例:

定义接口:

public interface List<E>{

//定义一个添加元素的方法

public void add(E element);

//定义一个返回队列大小的方法

public int count();

//定义一个获取指定位置的元素的方法

public E ele(int index);

}

实现方法:

//添加元素的方法

public void add(E element){

 Object newarray[]=new Object[array.length +1];

 for(int i=0; i<array.length ;i++){

 newarray[i]=array[i];

 }

 newarray[array.length ]=element;

 array=newarray;

 count++;

}

<!--EndFragment-->

猜你喜欢

转载自shl779189276-163-com.iteye.com/blog/1136155