北大青鸟java培训:Java中的时间处理?

Python020

北大青鸟java培训:Java中的时间处理?,第1张

在Java中,如何获取不同时区的当前时间?你知道这道题的正确答案应该如何回答吗?背后的原理又是什么呢?然后,紧接着,我又提出了以下问题:为什么以下代码无法得到美国时间。

(在东八区的计算机上)接下来,java课程培训机构http://www.kmbdqn.cn/就围绕这两个问题,来带领读者一起学习一下哪些和Java中的时间有关的概念。

时区前面提到了时区,可能很多读者不知道什么是时区,先来简单介绍一下。

时区是地球上的区域使用同一个时间定义。

以前,人们通过观察太阳的位置(时角)决定时间,这就使得不同经度的地方的时间有所不同(地方时)。

1863年,首次使用时区的概念。

时区通过设立一个区域的标准时间部分地解决了这个问题。

世界各个国家位于地球不同位置上,因此不同国家,特别是东西跨度大的国家日出、日落时间必定有所偏差。

这些偏差就是所谓的时差。

为了照顾到各地区的使用方便,又使其他地方的人容易将本地的时间换算到别的地方时间上去。

有关国际会议决定将地球表面按经线从东到西,划成一个个区域,并且规定相邻区域的时间相差1小时。

在同一区域内的东端和西端的人看到太阳升起的时间最多相差不过1小时。

当人们跨过一个区域,就将自己的时钟校正1小时(向西减1小时,向东加1小时)接下来,本文就围绕这两个问题,来带领读者一起学习一下哪些和Java中的时间有关的概念。

时区前面提到了时区,可能很多读者不知道什么是时区,先来简单介绍一下。

时区是地球上的区域使用同一个时间定义。

以前,人们通过观察太阳的位置(时角)决定时间,这就使得不同经度的地方的时间有所不同(地方时)。

1863年,首次使用时区的概念。

时区通过设立一个区域的标准时间部分地解决了这个问题。

世界各个国家位于地球不同位置上,因此不同国家,特别是东西跨度大的国家日出、日落时间必定有所偏差。

这些偏差就是所谓的时差。

为了照顾到各地区的使用方便,又使其他地方的人容易将本地的时间换算到别的地方时间上去。

有关国际会议决定将地球表面按经线从东到西,划成一个个区域,并且规定相邻区域的时间相差1小时。

在同一区域内的东端和西端的人看到太阳升起的时间最多相差不过1小时。

当人们跨过一个区域,就将自己的时钟校正1小时(向西减1小时,向东加1小时

一. 获取当前系统时间和日期并格式化输出:\x0d\x0a\x0d\x0aimport java.util.Date\x0d\x0aimport java.text.SimpleDateFormat\x0d\x0a\x0d\x0apublic class NowString { \x0d\x0a public static void main(String[] args) { \x0d\x0a SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")//设置日期格式\x0d\x0a System.out.println(df.format(new Date()))// new Date()为获取当前系统时间\x0d\x0a } \x0d\x0a} \x0d\x0a\x0d\x0a二. 在数据库里的日期只以年-月-日的方式输出,可以用下面两种方法:\x0d\x0a\x0d\x0a1、用convert()转化函数:\x0d\x0a\x0d\x0aString sqlst = "select convert(varchar(10),bookDate,126) as convertBookDate from roomBook where bookDate between '2007-4-10' and '2007-4-25'"\x0d\x0a\x0d\x0aSystem.out.println(rs.getString("convertBookDate"))\x0d\x0a\x0d\x0a2、利用SimpleDateFormat类:\x0d\x0a\x0d\x0a先要输入两个java包:\x0d\x0a\x0d\x0aimport java.util.Date\x0d\x0aimport java.text.SimpleDateFormat\x0d\x0a\x0d\x0a然后:\x0d\x0a\x0d\x0a定义日期格式:SimpleDateFormat sdf = new SimpleDateFormat(yy-MM-dd)\x0d\x0a\x0d\x0asql语句为:String sqlStr = "select bookDate from roomBook where bookDate between '2007-4-10' and '2007-4-25'"\x0d\x0a\x0d\x0a输出:\x0d\x0a\x0d\x0aSystem.out.println(df.format(rs.getDate("bookDate")))

Date date=new Date()

DateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")

String time=format.format(date)

不同的方法介绍如下:

1、通过Date类来获取当前时间。

Date day=new Date()

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")

System.out.println(df.format(day))

2、通过System类中的currentTimeMillis方法来获取当前时间。

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")  System.out.println(df.format(System.currentTimeMillis()))

3、通过Calendar类来获取当前时间。

Calendar c = Calendar.getInstance()//可以对每个时间域单独修改

int year = c.get(Calendar.YEAR)

int month = c.get(Calendar.MONTH)

int date = c.get(Calendar.DATE)

int hour = c.get(Calendar.HOUR_OF_DAY)

int minute = c.get(Calendar.MINUTE)

int second = c.get(Calendar.SECOND)

System.out.println(year + "/" + month + "/" + date + " " +hour + ":" +minute + ":" + second)

4、通过Date类来获取当前时间。

Date date = new Date()

String year = String.format("%tY", date)

String month = String.format("%tB", date)

String day = String.format("%te", date)

System.out.println("今天是:"+year+"-"+month+"-"+day)