邂逅Java集合框架
来源:互联网 发布:防网络诈骗作文1000字 编辑:程序博客网 时间:2024/05/07 10:25
Java集合框架是Java语言的重要组成部分,它包含了系统而完整的集合层次体系,封装了大量的数据结构的实现,深刻理解Java集合框架的组成结构及其中的实现类和算法,可以极大的提高程序员编码的能力。
一、概念
又称容器,是一个对象,能将具有相同性质的多个元素汇集成一个整体。集合框架被用于存储,获取,操纵和传输聚合的数据。
二、成员介绍
如下图,Java平台提供了一个全新的集合框架,其核心接口是Collection、List(列表)、Set(集合)和Map(映射)。由图可知,Collection是集合继承树中最顶层的接口,容器几乎都要实现该接口。
集合、列表、映射三种结构:
List:无序的,没有重复项目的集合
LIST:有序的,可以重复的
MAP:关键字与数值对,关键字是唯一标示不能重复,数据可以重复。
三、ArrayList类
是对AbstractList类的扩展,支持可随需要而增长的动态数组。在Java中标准的数组是订场的,他们被创建之后,就不能被加长或缩短,也就意味着开发者必须先知道数组可以容纳多少元素。一般情况下,只有在运行时才能知道需要多大的数组,为了解决这个问题,类集框架定义了ArrayList,它能够动态地增加或减少其大小。
Eg1:
import java.util.*;public class Test{ public static void main(String[] args){ Collection c=new ArrayList(); c.add("hello"); c.add(new Name("f1","11")); c.add(new Integer(100)); System.out.println(c.size()); System.out.println(c); }}
四、HashSet类
Set集合是一种不包含重复元素的Collection。是对AbstractSet类的扩展,它创建了一个类集,该类集使用散列表进行存储,而散列表则通过使用称之为散列法的机制来储存信息。在散列中,一个关键字的信息内容被用来确定唯一的一个值,称为散列码,它被用来当做与关键字相连的数据的存储下标。
Eg2:
import java.util.*;public class BasicContainner{public static void main(String[] args){Collection c=new HashSet();c.add("hello");c.add(new Name("f1","11"));c.add(new Integer(100));c.remove(new Integer(100));System.out.println(c.remove(new Name("f1","11")));System.out.println(c);}}class Name{private String firstName,lastName;public Name(String firstName,String lastName){this.firstName=firstName;this.lastName=lastName;}public String getFirstName(){return firstName;}public String getLastName(){return lastName;}public String toString(){return firstName + " " + lastName;}public boolean equals(Object obj){if(obj instanceof Name){Name name=(Name) obj;return(firstName.equals(name.firstName))&&(lastName.equals(name.lastName));}return super.equals(obj);}public int hashCode(){return firstName.hashCode();}}
注意:
1、重写equal也要重写hashCode方法
2、当对象用作索引的时候,使用hashCode方法
五、HashMap类
首先介绍一下什么是Map。在数组中我们是通过数组下标来对其内容索引的,而在Map中我们通过对象来对对象进行索引,用来索引的对象叫做key,其对应的对象叫做value。HashMap类基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。在HashMap中通过get()来获取value,通过put()来插入value,ContainsKey()则用来检验对象是否已经存在。可以看出,和ArrayList的操作相比,HashMap除了通过key索引其内容之外,别的方面差异并不大。
Eg3:
import java.util.*;public class MyHashMap{public static void main(String[] args){HashMap hm=new HashMap();hm.put(1,'Z');hm.put(2,'H');hm.put(3,'O');hm.put(4,'U');System.out.print("添加元素后结果为:");System.out.println(hm);hm.remove(3);hm.put(2,"替换");System.out.print("删除和替换元素后的结果:");System.out.println(hm);}}
六、小结
这篇博客主要介绍了一下集合框架的概念、集合框架接口,以及列表、集合、映射三种结构。还需要在以后的运行中加强对集合框架的理解。
0 0
- 邂逅Java集合框架
- 邂逅java
- Java集合:集合框架
- 【Java】java集合框架
- [Java]Java集合框架
- JAVA集合框架和集合
- 【集合】Java集合框架介绍
- Java集合之集合框架
- 邂逅JAVA虚拟机
- 与java的邂逅
- [集合]Java的集合框架 Collection集合
- Java集合框架 (一)
- Java集合框架 (二)
- Java集合框架(三)
- Java集合框架
- 也来谈Java集合框架
- 也来谈Java集合框架
- Java集合框架 (一)
- jxl导入Excel文件(内含图片)
- 图片格式判断
- Execl数据导入SQL Server
- Linux下安装第二块新硬盘 - 详细步骤
- CVS tag and branch
- 邂逅Java集合框架
- VirtualBox虚拟机移动到别的硬盘
- Axure制作手机UI原型之界面滑动滚动效果
- VirtualBox安装win8预览版1366x768不能全屏问题?
- MSN去广告技巧
- Android 零碎
- 倒排索引概述
- Java 操作鼠标、键盘
- Sql Server用户名和登录名的关系总结