没有合适的资源?快使用搜索试试~ 我知道了~
java实用工具类介绍
资源详情
资源评论
资源推荐
实用工具类库 java.util-
-
本章介绍 的实用工具类库 包。在这个包中, 提供了一些实用的方法和数据结构。例
如, 提供日期类、日历类来产生和获取日期及时间,提供随机数类产
生各种类型的随机数,还提供了堆栈、向量、位集合以及哈希表
等类来表示相应的数据结构。
图 ! 给出了 包的基本层次结构图。下面我们将具体介绍其中几个重要的类。
┌
│
│ └"#
│
│$
│ └
│ └%&
│'(
│
┌普通类┤ ├)
│ │ └%&$
│ │)
│ │(
│ │
│ │#*+
│ │
│ │ └
┤ └*,
│ └&*,
│ ┌'
├接 口┤')
│ └(
│ ┌'&$'-&
└异常类┤.#'-&
│/''-&
└*.$)'-&
图 ! 包的基本层次结构
0日期类
在日期类中封装了有关日期和时间的信息,用户可以通过调用相应的方法来获取系统时间或设
置日期和时间。 类中有很多方法在 1!2 公布后已经过时了,在 3 中我们将介绍 1!2 中新
加的用于替代 的功能的其它类。
在日期类中共定义了六种构造函数。
!&
创建的日期类对象的日期时间被设置成创建时刻相对应的日期时间。
例 $45;66$ 被设置成创建时刻相对应的日期时间。
0&#
#型的参数 可以通过调用 类中的 方法 &#来获得。
例 #4&7.8!99:!3;3;227<
$45<
66$ 中时间为 !99: 年 ! 月 8 号星期一,!3;3;22。
3&#
按字符串 产生一日期对象。 的格式与方法 & 中字符串参数的模式相同。
例 $457.8!99:!3;3;227<
66$中时间为 !99: 年 ! 月 8 号星期一,!3;3;22
=&$>>
?&$>>>>
8&$>>>>>
按给定的参数创建一日期对象。
参数说明:
$ 的值为:需设定的年份@!922。例如需设定的年份是 !99: 则 $ 的值应为 9:,即 !99:@
!922 的结果。所以 中可设定的年份最小为 !922;
的值域为 2~!!,2 代表 ! 月,!! 表代表 !0 月;
的值域在 !~3! 之间;
的值域在 2~03 之间。从午夜到次日凌晨 ! 点间 42,从中午到下午 ! 点间 4!0;
和 的值域在 2~?9 之间。
例 $45!!>3>=<
66$ 中的时间为:2=@A&@!!!0;22;22A.
另外,还可以给出不正确的参数。
例 设定时间为 !9!2 年 0 月 32 日,它将被解释成 3 月 0 日。
$45!2>!>32>!2>!0>3=<
$&7$B<;7C$<
66打印结果为:$B<;D.20!2;!3;3=".*C2 ;22!9!2
下面我们给出一些 类中常用方法。
!&#E*$>>>>
该方法将利用给定参数计算 E* 值。E* 是一种计时体制,与 ".*格林威治时间的计时体系略
有差别。E* 计时体系是基于原子时钟的,而 "*.* 计时体系是基于天文学观测的。计算中使用的一般
为 ".* 计时体系。
0&#&#
该方法将字符串 转换成一个 # 型的日期。在介绍构造方法 #时曾使用过这个方
法。
字符串 有一定的格式,一般为:
星期 日 年 时间 ".*C时区
若不注明时区,则为本地时区。
3&.
=&#.
这两个方法分别为设定和获取月份值。
获取的月份的值域为 2~!!,2 代表 ! 月,!! 代表 !0 月。
?&##
8&#)#
:&#".*#
将给定日期对象转换成不同格式的字符串。它们对应的具体的格式可参看例子 !。
&#*+(F
该方法用于获取日期对象的时区偏移量。
例 ! 中对上面介绍的 类中的基本方法进行了具体的应用,并打印了相应的结果。由于使用了
一些过时的方法,所以编译时会有警告信息。另外,由于本例中的时间表示与平台有关,不同的 1 版
本对此处理不完全相同,因此不同版本的 1 执行本例的结果可能有细微差异。
例 !A&&
&#$<
&<
&A&&G
&##HIG
$45<
66$ 中的日期被设成创建时刻的日期和时间,假设创建时刻为 !99: 年 3 月
6603 日 !: 时 ?! 分 ?= 秒。
$&7*$B<7C$<
66返回一般的时间表示法,本例中结果为
66*$B<J.$03!:;?!;?=!99:
$&7*$B<K".*;7
C$".*#<
66返回结果为 ".* 时间表示法,本例中结果为
66*$B<K".*;03.$!99:29;?!;?=;".*
$&7*$B<);7
C$)#<
66返回结果为本地习惯的时间表示法,结果为
66*$B<);2?60369:!:;?!;?=
$&7*$B<$;7C$#L<
$&7*$B<;7C$#.C!<
$&7*$B<;7C$#<
66调用 类中方法,获取年月日的值。
66下面调用了不同的构造方法来创建 类的对象。
$!45!22>!>03>!2>!0>3=<
$&7$!B<;7C$!<
$0457!0A#!998!3;3;227<
$&7$0B<;7C$0<
#4&7?A#!998!3;3;22".*C2 227<
$345<
$&7$3B<".*;7C$3".*#<
$&7$3B<);7
C$3)#<
$&7$3B<+F;7
C$3#*+(F<
M
M
运行结果1!3 版,与原文不同,原文是 1!2 版:
';2!NA&&
*$B<*0:!:;? ;!8*022!
*$B<K".*;0:022!29;? ;!8".*
*$B<);022!@!0@0:!:;? ;!8
*$B<$;!2!
*$B<;!0
*$B<;0:
$!B<;DJ03!2;!0;3=*0222
$0B<;JA#!0!3;23;22*!998
$3B<".*;?A#!9982?;23;22".*
$3B<);!998@ @?!3;23;22
$3B<+F;@= 2
';2!N
3日历类
在早期的 1 版本中,日期类附有两大功能:!允许用年、月、日、时、分、秒来解释日期:
0允许对表示日期的字符串进行格式化和句法分析。在 1!! 中提供了类 来完成第一种功
能,类 J 来完成第二项功能。J 是 - 包中的一个类。与 类有所不
同的是,J 类接受用各种语言和不同习惯表示的日期字符串。本节将介绍 包中的类
及其它新增加的相关的类。
类 是一个抽象类,它完成日期类和普通日期表示法即用一组整型域如
L'A,.(/*,AL,(E 表示日期之间的转换。
由于所使用的规则不同,不同的日历系统对同一个日期的解释有所不同。在 1!! 中提供了
类一个子类 "#OO它实现了世界上普遍使用的公历系统。当然用户也可以通
过继承 类,并增加所需规则,以实现不同的日历系统。
第 "# 继承了 类。本节将在介绍类 "# 的同时顺带
介绍 类中的相关方法。
类 "# 提供了七种构造函数:
!&"#
创建的对象中的相关值被设置成指定时区,缺省地点的当前时间,即程序运行时所处的时区、地点的
当前时间。
0&"#*,+
创建的对象中的相关值被设置成指定时区 +,缺省地点的当前时间。
3&"#))
创建的对象中的相关值被设置成缺省时区,指定地点 ) 的当前时间。
=&"#*,+>))
创建的对象中的相关值被设置成指定时区,指定地点的当前时间。
上面使用到的类 *, 的性质如下:
*, 是 包中的一个类,其中封装了有关时区的信息。每一个时区对应一组 K。类
*, 提供了一些方法完成时区与对应 K 两者之间的转换。
Ⅰ已知某个特定的 K,可以调用方法
&$+*,#*,#K
来获取对应的时区对象。
例 太平洋时区的 K 为 %*,用下面的方法可获取对应于太平洋时区的时区对象:
*,+4*,#*,7%*7<
调用方法 #P可以获取主机所处时区的对象。
*,+4*,#P<
Ⅱ调用以下方法可以获取时区的 K
■&$+#HI#K5(F
根据给定时区偏移值获取 K 数组。同一时区的不同地区的 K 可能不同,这是由于不同地区对是否
实施夏时制意见不统一而造成的。
例 #HI4*,#AK@:Q82Q82Q!222<
打印 ,结果为 H2I4%/*,H!I4.*
■&$+#HI#AK
获取提供的所有支持的 K。
■&##K
获取特定时区对象的 K。
例 *,+4*,#P<
#4+#K<
打印 ,结果为 4**。
上面使用类的对象代表了一个特定的地理、政治或文化区域。) 只是一种机制,它用来标识一
类对象,) 本身并不包含此类对象。
要获取一个 ) 的对象有两种方法:
Ⅰ调用 ) 类的构造方法
)###>#$
)###>#$>#
参数说明:##OO在 K(@839 中定义的代码,由两个小写字母组成。
$OO在 K(@3!88 中定义的代码,由两个大写字母组成。
OO售货商以及特定浏览器的代码,例如使用 DK/ 代表 D5。
Ⅱ调用 ) 类中定义的常量
) 类提供了大量的常量供用户创建 ) 对象。
例 )K/A
为中国创建一个 ) 的对象。
类 *, 和类 ) 中的其它方法,读者可查阅 A%K。
?&"#$>>
8&"#$>>>>
:&"#$>>>>>
剩余32页未读,继续阅读
wenpanhappy
- 粉丝: 4
- 资源: 10
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于Python的图像阴影检测与去除源码(高分期末大作业项目).zip
- 基于C++/Qt实现的井字棋游戏
- 基于 Python 编程语言的 Web 框架Django
- Python和Flask实现的基于体检数据的城市公共健康可视分析系统源码+使用说明.zip
- 基于python实现的华为智慧工地-安全帽检测
- buck-boost_2023-12-16_12-12-13.eprj
- 后端开发关于数据库和API开发的介绍
- 机器学习和数据挖掘课程设计-米其林餐厅数据挖掘管理系统源码+使用文档说明.zip
- html html html展示我与ai的对化
- 数据结构课程设计-全国交通出行咨询模拟系统C语言实现源码.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0