Java.util包详解:核心集合类与实用工具方法全面解析

创始人
2024-12-25 23:21:15
0 次浏览
0 评论

Java.util是什么意思

1.util包结构

常用的集合类主要实现两个“超级接口”:Collection和Map。

1.1Collection有两个子接口:List和Set

List的特点是元素是有序的、重复的。
常用实现的集合类包括ArrayList、LinkedList和Vector(线程安全)。

Set的特点是元素无序,不能重复。
常用的集合类有HashSet、LinkedHashSet、TreeSet(可排序)。

1.2Map是键值对的集合

一个特点就是键值对无序的。
既独特又有意义。
值可以重复(这种说法实际上是不准确的,因为键和值实际上是相互关联的)。
常用的有HashMap、HashTable(线程安全)和TreeMap(可排序)。

1.3其他重要接口和类

上面是Java教材中经常提到的util包的数据收集结构。
但如果我们深入观察,我们会发现还有几个更重要的要素:

Iterator:迭代接口

集合类一旦实现了这个接口,就具有了迭代功能。
迭代最简单的实现是ArrayList,迭代过程实际上就是对数组进行迭代。
LinkedList、LinkedHashSet、LinkedHashMap的迭代过程就是链表的迭代。
这两种情况的迭代效率都非常高,并且迭代时间与容器中元素的数量成正比。
但HashSet和HashMap的迭代效率稍低。
由于使用了哈希表,因此元素在数组中进行哈希处理。
迭代时必须读取整个数组,迭代时间与容器的容量成正比。

Comparator:比较接口

实现该接口后,可以使用Compare()方法对集合元素进行比较和排序

AbstractXXX:骨架类

所谓的骨架类,其实就是各个集合核心代码的实现,所以继承这个抽象类的子类要做的工作就少一些。
例如摘要列表表示“随机访问”集合的核心代码实现(基本数组实现)。
AbstractSequentialList是“连续访问”集合的基本代码实现(链表的基本实现)。

集合、数组

集合工具类和数组工具类。
看来Java中的工具类喜欢在相应的接口或者类名后面加一个S来代表他们的工具类。

Java中java.util一般可用在哪些项目中

本质上,如果没有这个包,你就无法运行javaweb项目...包java.util描述了集合框架、传统集合类、事件模型、日期和时间功能、国际化和各种实用程序类(字符列标记器、随机数生成器、位数组、日期、堆栈类、向量类等)。
包规范CollectionsFrameworkOverviewCollectionsFrameworkAnnotatedOutline相关文档有关概述、教程、示例、指南和工具文档,请参阅:CollectionsFrameworkTutorialCollectionsFrameworkDesignFAQ起始于:JDK1.0Java实用类库java.util包。
在这个包中,Java提供了一些实用的方法和数据结构。
例如,Java提供了Date(数据)和Calendar(日历)类来生成和检索日期和时间,RandomNumber(随机数)类来生成各种类型的随机数,以及Stack(堆栈)类)和Vector(向量)。
还提供了。
(Vector)、Bitset和Hashtable类代表相应的数据结构。
图1.1显示了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.事件Object│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.StackJava.util┤└java.util.TimeZone│└java.util.SimpleTimeZone│┌java.util.Enumeration§接口┤java.util.事件监听呵呵│─java.util.Observer│┌java.util.EmptyStackException│异常类┤java.util.MissingResourceException│java.util.NoSuchElementException│java.util.TooManyListenersException
热门文章
1
Java字符串分割技巧:轻松获取逗号前的... java任意一个字符串,当它碰到第一个逗号时,返回逗号前面的字符串,例如:str...

2
SQL多表连接查询全解析:JOIN语句应... sql多表关联查询在执行SQL多表连接查询时,可以使用JOIN语句将多个表连接在...

3
Java中字符串类型详解:String与... 变量有字符类型,为什么没有字符串类型??基本类型:charshort、int、l...

4
JavaSE与JavaEE:从基础到企业... javase 和javaee的区别?JavaSE和JavaEE...

5
Java程序员面试必知:核心技术问答与技... java编程程序员技术面试常见面试?随着互联网的不断发展,Java开发已经成为很...

6
Java.exe与Javaw.exe:区... 程序中java和javaw有什么区别java和javaw的区别:两者都是Java...

7
深入解析:Java中的javax包及其与... JAVA导入时,什么是javax?awt是java1.0,swing是java2...

8
C语言字符串操作:常用函数详解与实例 c语言中string怎么用啊C语言提供了丰富的字符串操作函数,大致可以分为几类:...

9
Java一维数组遍历技巧:高效输出元素值... 用java一维数组的遍历:输出数组中的所有元素值,要求打印格式为:[元素值1,元...

10
C语言实现16进制字符串到字节数组转换方... C语言把16进制字符串转换成字节数组#includeintChange(char...