ylbtech-Java-API:java.util百科

包含集合框架、遗留的 collection 类事件模型日期和时间设施国际化和各种实用工具类字符串标记生成器、随机数生成器数组日期Date类、堆栈Stack类、向量Vector类等)。集合类、时间处理模式、日期时间工具等各类常用工具包

1、

中文名:java.util
性    质:各类常用工具包
泛型接口:比较器 Set 集合 列表
异常:增加一个不兼容对象到集合或映射

2、

1.返回顶部
1、

集合框架集合

java的集合框架为程序提供了一种处理对象组的标准方式。设计了一系列标准泛型接口:
⑴Collection ()接口,扩展了Iterable接口,位于集合层次结构的顶部,因此所有的集合都实现Collection接口,并提供了iterator()方法来返回一个迭代器
  • add()方法添加对象,remove()方法删除元素,
  • clear()删除集合所有元素(size=0),
  • contains()方法查看集合是否包含对象,
  • toArray()方法返回集合元素数组,
  • equals()方法比较两个集合是否相等,
  • size()方法返回集合中元素的数目,
  • isEmpty()判断集合是否为空,
  • hashCode()返回调用集合的散列码,
  • iterator()返回调用集合的迭代器。
⑵List()接口,扩展了Collection接口,存储一个序列的元素(列表基于0的索引),可以包含重复的元素,但不能有null值
获得特定位置的对象调用get()方法,
  • 用set()方法给特定位置元素赋值,
  • 用indexOf()或lastIndexOf()方法分别获得对象的第一个实例或最后一个实例所在的位置,
  • subList()方法取子列表,
  • listIterator()返回一个迭代器。
⑶Set接口,扩展了Collection接口该集合不允许存在相同的元素(包括唯一null值)。SortedSet接口,扩展了Set接口并声明自已是升序的集合。
  • First()或Last()方法分别获得第一或最后一个对象,
  • subSet()获得子集,
  • headSet()和tailSet()方法分别获得从头开始或直到末尾的子集。
⑷Queue(队列)接口,扩展了Collection接口,并声明一个队列行为(FIFO,先进先出列表)。
  • Offer()方法在队列尾插入元素。
  • element()和peek()方法获得但不移除队列的第一个元素,如果队列为空,element()抛出NoSuchElementException异常,peek()返回null。
  • poll()和remove()方法获得并移除队列的第一个元素,如果队列为空,poll()返回null,remove()抛出异常
⑸Comparator(比较器)接口,定义了两个方法:compare()和equals()方法,通过改写compare()方法,能够改变对象排序的方式。
⑹Iterator(迭代器)接口、ListIterator(列表迭代器,可进行双向遍历)接口,一般来说,使用迭代器在集合中遍历时应遵循下面的步骤:一通过集合的iterator()得到一个指向集合开始处的迭代器:Iterator itr=collectionObject.iterator();二设置一个判断是否有下一个元素的循环:如while(itr.hasNext()){。三在循环中取出下一个元素:如Object element=itr.next();
⑺RandomAccess(随机访问)接口。被ArrayList类和遗留的Vector类实现。
⑻Map(映射)接口、Map.Entry (Map的嵌套类、内部类)接口SortedMap(默认按key键升序排列的映射)接口。映射是将键映射到值的对象,一个映射不能包含重复的键;每个键最多只能映射一个值。Map接口提供三种collection 视图:键集、值集合或键-值映射关系集。映射不是集合,因为它们不实现Collection接口,但是可以通过使用entrySet()方法获得键-值映射关系的集合视图跟效果,或使用keySet()方法获得键的集合视图,使用values()方法获得值的集合视图。put()方法将值放入映射中,get()得到与键k相关联的值。SortedMap接口增加了获取子映射的headMap()、tailMap()、subMap()方法和获取首尾键的firstKey()、lastKey()方法。Map.Entry接口定义了获取键值的getKey()、getValue()方法和替换值的setValue()方法。
Collection集合的有序是Set,Map的有序是TreeMap。
异常:试图增加一个不兼容的对象到集合或映射中,将抛出ClassCastException;如果使用无效索引,抛出IndexOutOfBoundException;null不允许存在于集合或映射中,如果试图使用null对象,抛出NullPointException;当修改不可改变的集合或映射时,抛出UnsupportedOperationException;当调用下一个对象不存在时,抛出NoSuchElementException;集合框架接口示意(父类∈子类):1、Collection∈⑴List,⑵Set∈SortedSet。2、Map∈SortedMap。
 

相关内容

包规范
Collections Framework Overview
Collections Framework Annotated Outline
相关文档
有关概述、教程、示例、指南和工具文档的信息,请参阅:
Collections Framework Tutorial
Collections Framework Design FAQ
从以下版本开始:
JDK1.0
Java的实用工具类库java.util包。在这个包中,Java提供了一些实用的方法和数据结构。例如,Java提供日期(Data)类、日历(Calendar)类来产生和获取日期及时间,提供随机数(Random)类产生各种类型的随机数,还提供了堆栈(Stack)、向量(Vector) 、位集合(Bitset)以及哈希表(Hashtable)等类来表示相应的数据结构。
下图给出了java.util包的基本层次结构图。下面我们将具体介绍其中几个重要的类。
┌java.util.BitSet
│java.util.Calendar
│ └java.util.GregorianCalendar
│java.util.Date
│java.util.Dictionary
│ └java.util.Hashtable
│ └java.util.Properties
│java.util.EventObject
│java.util.ResourceBundle
┌普通类┤ ├java.util.ListResourceBundle
│ │ └java.util.PropertyResourceBundle
│ │java.util.Local
│ │java.util.Observable
│ │java.util.Random
│ │java.util.StringTokenizer
│ │java.util.Vector
│ │ └java.util.Stack
Java.util┤ └java.util.TimeZone
│ └java.util.SimpleTimeZone
│ ┌java.util.Enumeration
├接 口┤java.util.EventListener
│ └java.util.Observer
│ ┌java.util.EmptyStackException
└异常类┤java.util.MissingResourceException
│java.util.NoSuchElementException
└java.util.TooManyListenersException
2、
2.返回顶部
 
3.返回顶部
 
4.返回顶部
 
5.返回顶部
1、
2、
 
6.返回顶部
 
作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

Java-API:java.util百科的更多相关文章

  1. java安全沙箱(四)之安全管理器及Java API

    java是一种类型安全的语言,它有四类称为安全沙箱机制的安全机制来保证语言的安全性,这四类安全沙箱分别是: 类加载体系 .class文件检验器 内置于Java虚拟机(及语言)的安全特性 安全管理器及J ...

  2. 泛型接口、JAVA API、包装类

    泛型接口就是拥有一个或多个类型参数的接口 语法: public interface 接口名<类型形参>{ 方法名(类型形参 类型形参实例); } 示例: public interface ...

  3. Java Concurrency - java.util.concurrent API Class Diagram

    摘自: www.uml-diagrams.org Here we provide several UML class diagrams for the Java™ 7 java.util.concur ...

  4. Atitit 图像处理 调用opencv 通过java  api   attilax总结

    Atitit 图像处理 调用opencv 通过java  api   attilax总结 1.1. Opencv java api的支持 opencv2.4.2 就有了对java api的支持1 1. ...

  5. 【分布式】Zookeeper使用--Java API

    一.前言 上一篇博客我们通过命令行来操作Zookeper的客户端和服务端并进行相应的操作,这篇主要介绍如何通过API(JAVA)来操作Zookeeper. 二.开发环境配置 首先打开Zookeeper ...

  6. Java api 入门教程 之 JAVA的Random类

    在实际的项目开发过程中,经常需要产生一些随机数值,例如网站登录中的校验数字等,或者需要以一定的几率实现某种效果,例如游戏程序中的物品掉落等. 在Java API中,在java.util包中专门提供了一 ...

  7. 使用函数库(JAVA API)

    /*使用函数库(JAVA API) * 在JAVA的API里类被封装在一个个的package,要使用package的类之前必须 * 要知道这个类属于哪个package * 引用类方式: * 1.通过i ...

  8. kafka2.9.2的伪分布式集群安装和demo(java api)测试

    目录: 一.什么是kafka? 二.kafka的官方网站在哪里? 三.在哪里下载?需要哪些组件的支持? 四.如何安装? 五.FAQ 六.扩展阅读   一.什么是kafka? kafka是LinkedI ...

  9. ubuntu12.04+kafka2.9.2+zookeeper3.4.5的伪分布式集群安装和demo(java api)测试

    博文作者:迦壹 博客地址:http://idoall.org/home.php?mod=space&uid=1&do=blog&id=547 转载声明:可以转载, 但必须以超链 ...

随机推荐

  1. linux环境下的python安装过程(含setuptools)

    这里我不想采用诸如ubuntu下的apt-get install方式进行python的安装,而是在linux下采用源码包的方式进行python的安装. 一.下载python源码包 打开ubuntu下的 ...

  2. MYSQL limit用法

    1.Mysql的limit用法 在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能. SELECT * FROM tabl ...

  3. 安装mysql5.7后无法启动,/var/run/mysqld 目录每次重启后都需要手动去创建--终极解决方案

    鉴于很多童鞋反应,mysql5.7安装后出现无法启动,建立/var/run/mysqld 并赋权mysql用户解决了启动的问题,但是重启系统后又出现无法启动的问题,导致/var/run/mysqld ...

  4. 【bzoj2151】种树(堆/优先队列+双向链表)

    题目传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=2151 这道题因为优先队列不怎么会用,而且手写堆的代码也不长,也想复习一下手写堆的写法…… ...

  5. How to use QToolBar and QToolButton in Qt

    http://developer.nokia.com/Community/Wiki/How_to_use_QToolBar_and_QToolButton_in_Qt How to use QTool ...

  6. 利用PushbackReader读取文件中某个字符串之前的内容

    package File; import java.io.FileReader; import java.io.IOException; import java.io.PushbackReader; ...

  7. Live disk migration with libvirt blockcopy

    nova采用 libvirt blockcopy(python  API virDomainBlockRebase)来做live snapshot. Create the base image: $ ...

  8. Linux系统用户/用户组/文件权限相关

    目录一.Linux系统用户/用户组权限相关二.Linux系统文件权限相关 一.Linux系统用户/用户组权限相关 .命令:usermod 用法:usermod [-agGus] user args ‘ ...

  9. java: i18n语言

    <%@ page language="java" contentType="text/html; charset=utf8"%> <%@ pa ...

  10. python3 列表属性

    1.合并 >>> l1=[1,2,3,'e']>>> l2=['f',34,'feel']>>> l1+l2[1, 2, 3, 'e', 'f', ...