Calendar 类的应用

Calendar 类的应用

Date 类最主要的作用就是获得当前时间,同时这个类里面也具有设置时间以及一些其他的功能,但是由于本身设计的问题,这些方法却遭到众多批评,不建议使用,更推荐使用 Calendar 类进行时间和日期的处理。

java.util.Calendar 类是一个抽象类,可以通过调用 getInstance() 静态方法获取一个 Calendar 对象,此对象已由当前日期时间初始化,即默认代表当前时间,如 Calendar c = Calendar.getInstance();

那么如何使用 Calendar 获取年、月、日、时间等信息呢?我们来看下面的代码:

其中,调用 Calendar 类的 getInstance() 方法获取一个实例,然后通过调用 get() 方法获取日期时间信息,参数为需要获得的字段的值, Calendar.Year 等为 Calendar 类中定义的静态常量。

运行结果: 

Calendar 类提供了 getTime() 方法,用来获取 Date 对象,完成 Calendar 和 Date 的转换,还可通过 getTimeInMillis() 方法,获取此 Calendar 的时间值,以毫秒为单位。如下所示:

运行结果:

 

任务

亲, Calendar 类的使用您掌握了吗?让我们来检验下吧。

代码编辑器中实现获取 Calendar 对象,并转换为指定格式的时间。请将第 9、12 行代码补充完整

运行结果: 

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class HelloWorld {

    public static void main(String[] args) {
		// 创建Canlendar对象
		Calendar c = Calendar.getInstance();

		// 将Calendar对象转换为Date对象
		Date date = c.getTime();

		// 创建SimpleDateFormat对象,指定目标格式
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

		// 将日期转换为指定格式的字符串
		String now = sdf.format(date);
		System.out.println("当前时间:" + now);
	}
}
时间: 2024-09-20 20:39:06

Calendar 类的应用的相关文章

java-请教JAVA中的Calendar类的一个问题

问题描述 请教JAVA中的Calendar类的一个问题 请问大神,我画红框的部分就是我出问题的地方,为什么我set好的Date值是5月,而下面输出后是0月?搞得下面的add方法也是从0开始加3 解决方案 把SimpleDateFormat中的m改为大写的M,改为"yyyy年MM月dd日".而且要注意,获取到的Month是用0-11表示的,如果要表示真实的日期,要记得+1. 解决方案二: yyyy年M月d日 看看

Java中Date类和Calendar类的常用实例小结_java

前言写后台程序的时候,经常需要存储当前服务器的时间戳,使用时间戳也很方便,客户端和服务器端都可以根据自己的需求做各自的转换 在php里,获取当前时间戳使用time()函数,格式化输出通过Date()函数即可,Java里相对复杂一些,这里简单介绍一下 Java语言中的Calendar,Date,DateFormat组成了Java标准的一个基本但是非常重要的部分.日期是商业逻辑计算一个关键的部分,所有的开发者都应该能计算未来的日期,定制日期的显示格式,并将文本数据解析成日期对象 获取UNIX时间戳在

Java中的日期和时间类以及Calendar类用法详解_java

Java日期和时间类简介 Java 的日期和时间类位于 java.util 包中.利用日期时间类提供的方法,可以获取当前的日期和时间,创建日期和时间参数,计算和比较时间. Date 类 Date 类是 Java 中的日期时间类,其构造方法比较多,下面是常用的两个: Date():使用当前的日期和时间初始化一个对象. Date(long millisec):从1970年01月01日00时(格林威治时间)开始以毫秒计算时间,计算 millisec 毫秒.如果运行 Java 程序的本地时区是北京时区(

Java的calendar类用法

YEAR  这是哪年 MONTH  这是月(从0开始) WEEK_OF_YEAR 今年的第几星期 WEEK_OF_MONTH 这个月的第几星期(从一开始) DATE  今天几号 DAY_OF_MONTH  这个月的第几天 DAY_OF_YEAR   这一年的第几天 DAY_OF_WEEK   这周周几(从日开始计算,从1计算) DAY_OF_WEEK_IN_MONTH 第几周(从第一天开始算一周) AM_PM  上午还是下午0为上午,1为下午 HOUR 12小时制几点 HOUR_OF_DAY 

Java Date和Calendar类的基础用法

Date和Calendar是JAVA类库里提供对时间进行处理的类,由于日期在商业逻辑的应用中占据着很重要的地位,所以在这里想对这两个类进行一个基本的讲解,由于技术有限,不到之处请指正. Date类顾名思义,一看就知道是和日期有关的类了,这个类最主要的作用就是获得当前时间了,然而这个类里面也具有设置时间以及一些其他的功能,可是由于本身设计的问题,这些方法却遭到众多批评,而这些遭受批评的功能都已移植到另外一个类里面,这就是今天要讲到的第二个类Calendar里面. 在讲两个类之前,这里又不能不多提一

calendar类 add的问题!

问题描述 addpublicabstractvoidadd(intfield,intamount)根据日历的规则,为给定的日历字段添加或减去指定的时间量.例如,要从当前日历时间减去5天,可以通过调用以下方法做到这一点:add(Calendar.DAY_OF_MONTH,-5).参数:field-日历字段.amount-为字段添加的日期或时间量.另请参见:roll(int,int),set(int,int)API文档是这样描述的但小弟不才未能理解,请问大哥大姐们,DAY_OF_MONTH后面的数子

Java Calendar类的时间操作_java

Java Calendar 类时间操作,这也许是创建日历和管理最简单的一个方案,示范代码很简单,演示了获取时间,日期时间的累加和累减,以及比较. 注意事项: Calendar 的 month 从 0 开始,也就是全年 12 个月由 0 ~ 11 进行表示. 而 Calendar.DAY_OF_WEEK 定义和值如下: Calendar.SUNDAY = 1 Calendar.MONDAY = 2 Calendar.TUESDAY = 3 Calendar.WEDNESDAY = 4 Calend

HDOJ(HDU) 2133 What day is it(认识下Java的Calendar类---日期类)

Problem Description Today is Saturday, 17th Nov,2007. Now, if i tell you a date, can you tell me what day it is ? Input There are multiply cases. One line is one case. There are three integers, year(0< year<10000), month(0<=month<13), day(0<

java.util.Calendar 类的使用,请教

问题描述 CalendarcurrentTime=Calendar.getInstance(TimeZone.getTimeZone("GMT"));CalendardefaultTime=Calendar.getInstance();System.out.println(currentTime);System.out.println(defaultTime);System.out.println(currentTime.getTimeInMillis());System.out.pr