java中集合(二)

一、Map接口

1.Map接口是存储一组成对出现的键(key)---- 值(value)对象。

2.Map接口中的key集无序,唯一,可以为空null,也就是只有一个键集为空,如果有重复的后面的会覆盖前面的。value集无序,允许重复。

3.Map接口得到常用方法

方法 说明
Object put(Object key,Object value) 将相互关联的一个key键与一个value值放入该集合,如果该Map接口中已经包含了key的value,那么旧的value值就会被覆盖!
Object remover(Object key) 移除key键
Object get(Object key)

获得key键集相关的value值,如果该key不关联任何非null值,则返回非null.

boolean containsKey(Object key) 判断该集合中是否存在key
boolean containsValue(Object value)

判断该集合中是否存在value

boolean isEmpty() 判断该集合中是否存在元素
void  clear() 清除集合中的所有元素
jint size() 返回集合中元素的数量
Set keySet() 获取所有的key键集的集合,
Collection values() 获取所有的value的集合

2.使用HashMap类动态存储数据

Map接口中最常用的实现类是HasMap类,它的优点是查询指定元素效率高

可以通过遍历循环的方式Map集合:可以通过iterator接口迭代器迭代的方式,增强for循环,还有键值-对的形式。

注意:数据添加到HashMap集合后,所有的数据都转换成Object类型,那么从中拿出来的时候就需要进行强制类型转换。

还有HashMap集合类不能够保证映射的顺序,因为他的键值是无序的!

二、Collections类

Collections类是java中提供的一个集合操作工具类,可以对集合中元素的排序,查找,和替换等操作。

注意:Collectons类和Collection接口是不同的,前面的是操作类,后面的集合接口。

1.对集合中元素的排序和查找:

要想进行元素之间的排序,就需要知道元素的大小,在java中要实现对象之间的比较大小,那么这个类需要实现Comparable接口。这个接口能够强行对实现他的每个类进行整体排序,也叫做自然排序,其中的方法是compareTo()方法叫做自然比较方法。

语法如下:int  compareTo(Object obj);

  • 参数:obje 就是要比较的对象
  • 返回值:负整数表示对象是小于,0是等于,整数是大于。

实现此接口的对象,可以通过Collections.sort()方法和Arrays.sort()方法进行自动排序。

注意:Map接口是无序的,所以不能对Map接口做排序操作。但是List接口是有序的,所以可以对List接口进行排序,但是List接口中存放的元素,必须是实现了Comaparable接口的元素才可以!

2.替换元素

使用Collections类的静态方法fill()方法来实现。

三、泛型

泛型:泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数,是代码可以应用于多种类型。

使用泛型的好处:

  • 可以保证数据存取的安全性
  • 因为不需要类型的强制转换,简化代码,提高了代码的重用率。

泛型的定义:简单的讲是,将对象的类型作为参数,指定到其他类或者方法上,从而保证类型转换的安全性和稳定性。

泛型的使用:

ArrayList <String> list=new ArrayList<String> ();

猜你喜欢

转载自blog.csdn.net/JAVA52Lin/article/details/83278478