使用Date和SimpleDateFormat类表示时间
Date类:
使用 Date 类的默认无参构造方法创建出的对象就代表当前时间,我们可以直接输出 Date 对象显示当前的时间,显示的结果如下:
Date d = new Date();
System.out.println(d);
结果:
Mon Feb 20 20:50:54 CST 2017
从结果可以看到,默认的时间格式不是太友好,与我们平时看到的时间格式不太一样,那如何才能让时间以我们指定的格式来显示呢?
SimpleDateFormat类:
那我们就可以使用SimpleDateFormat类对日期进行格式化 ,可以将日期转换为我们指定格式的文本,当然也可以将文本转换为日期。
1.使用format()方法将日期转换为指定格式的文本
例:
package Date和SimpleDateFormat类;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class HelloWorld {
/**
* @param args
*/
public static void main(String[] args) throws ParseException {
//第一步:创建Date对象,表示当前时间
Date d = new Date();
//第二步:创建SimpleDateFormat对象,并指定目标格式
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy/MM/dd HH:mm");
SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//第三步:调用format方法,将日期转换为字符串
String st1 = sdf1.format(d);
String st2 = sdf2.format(d);
String st3 = sdf3.format(d);
//输出转换后的字符串
System.out.println(st1);
System.out.println(st2);
System.out.println(st3);
}
}
结果:
2017年02月20日 20时50分54秒
2017/02/20 20:50
2017-02-20 20:50:54
2.使用prase()方法将文本转换为日期
package Date和SimpleDateFormat类;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class HelloWorld {
/**
* @param args
*/
public static void main(String[] args) throws ParseException {
//将指定格式的文本转换为日期
//创建指定日期格式的文本
String st = "2015年3月5日 12:4:1";
//创建指定日期格式的SimpleDateFormat对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
//调用parse()方法,将文本转换为日期
Date da = sdf.parse(st);
//输出转换后的文本
System.out.println(da);
}
}
结果:
Thu Mar 05 12:04:01 CST 2015
注意!
1、 调用 SimpleDateFormat 对象的 parse() 方法时可能会出现转换异常,即 ParseException ,因此需要进行异常处理
2、 使用 Date 类时需要导入 java.util 包,使用 SimpleDateFormat 时需要导入 java.text 包。
Calendar类:
Date类最主要的作用就是获得当前时间,同时这个类里面也具有设置时间以及一些其他的功能,但是由于本身设计的问题,这些方法却遭到众多批评,不建议使用,更推荐使用 Calendar 类进行时间和日期的处理。
java.util.Calendar 类是一个抽象类,可以通过调用 getInstance() 静态方法获取一个 Calendar 对象,此对象已由当前日期时间初始化,即默认代表当前时间,如 Calendar c = Calendar.getInstance();
那么如何使用 Calendar类呢?
例:
package Date和SimpleDateFormat类;
import java.util.Calendar;
public class Calendar类 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//创建Calendar对象
Calendar ca = Calendar.getInstance();
int year = ca.get(Calendar.YEAR); //获取年
int month = ca.get(Calendar.MONTH)+1; //获取月
int day = ca.get(Calendar.DAY_OF_MONTH);//获取日
int hour = ca.get(Calendar.HOUR_OF_DAY);//获取小时
int minute = ca.get(Calendar.MINUTE); //获取分钟
int second = ca.get(Calendar.SECOND); //获取秒
//输出时间
System.out.println("当前时间:"+year+"-"+month+"-"+day+" "+hour+":"+minute+":"+second);
}
}
结果:
当前时间:2017-2-20 21:58:57
其中,调用 Calendar 类的 getInstance() 方法获取一个实例,然后通过调用 get() 方法获取日期时间信息,参数为需要获得的字段的值, Calendar.Year 等为 Calendar 类中定义的静态常量。
Calendar 类提供了 getTime() 方法,用来获取 Date 对象,完成 Calendar 和 Date 的转换,还可通过 getTimeInMillis() 方法,获取此 Calendar 的时间值,以毫秒为单位
例:
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class HelloWorld {
public static void main(String[] args) {
// 创建Calendar对象
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);
}
}
结果:
当前时间:2017-02-20 12:50:45
使用Date和SimpleDateFormat类表示时间的更多相关文章
- 使用 Date 和 SimpleDateFormat 类表示时间、Calendar类和Math类
一. Date 和 SimpleDateFormat类表示时间 在程序开发中,经常需要处理日期和时间的相关数据,此时我们可以使用 java.util 包中的 Date 类.这个类最主要的作用就是获取当 ...
- Java学习--使用 Date 和 SimpleDateFormat 类表示时间
使用 Date 和 SimpleDateFormat 类表示时间 在程序开发中,经常需要处理日期和时间的相关数据,此时我们可以使用 java.util 包中的 Date 类.这个类最主要的作用就是获取 ...
- 使用 Date 和 SimpleDateFormat 类表示时间
在程序开发中,经常需要处理日期和时间的相关数据,此时我们可以使用 java.util 包中的Date类.这个类最主要的作用就是获取当前时间,我们来看下Date的类的使用: Date d=new Dat ...
- Date 和 SimpleDateFormat 类表示时间
Date now=new Date(); // 使用format()方法将日期转换为指定格式的文本 SimpleDateFormat sdf1 = new SimpleDateFormat(" ...
- Date Math SimpleDateFormat 类
Date 和 SimpleDateFormat /* Date 日期类 许多方法都被Calendar取代了 Date() 获取当前时间 使用概率最高 Calendar 类用常量获取当前时间 一般很少 ...
- JAVA中使用Date和SimpleDateFromat类表示时间
转自:https://www.imooc.com/code/2335 仅做个人学习保存之用,侵删! 在程序开发中,经常需要处理日期和时间的相关数据,此时我们可以使用 java.util 包中的 Dat ...
- 使用SimpleDateFormat类来实现时间跟字符串的转化
使用Date和SimpleDateFormat类表示时间 1.Date类 需要处理日期和时间的相关数据时可以使用 java.util 包中的 Date 类,这个类最主要的作用就是获取当前时间.下面看看 ...
- Java—包装类、Date和SimpleDateFormat、Calendar类
包装类 基本数据类型不能调用方法,功能简单,为了让基本数据类型也具备对象的特性,Java为每个基本数据类型提供了一个包装类,这样就可以像操作对象那样来操作基本数据类型. 基本类型和包装类之间的对应关系 ...
- Java基础(37):Java中日期的显示与格式定值----Date与SimpleDateFormat的试用
使用 Date 和 SimpleDateFormat 类表示时间 在程序开发中,经常需要处理日期和时间的相关数据,此时我们可以使用 java.util 包中的 Date 类.这个类最主要的作用就是获取 ...
随机推荐
- html5手机 input file 上传图片 调用API
<input type="file" accept="video/*;capture=camcorder"> <input type=&quo ...
- php工厂模式的实例
* 单例模式:用于创建单一类型的唯一实例对象 * 工厂模式:用于创建多种类型的多个实例对象 //声明形状类 class Shape { //声明静态方法create,根据容器形状不同,创建不同图形类的 ...
- 易错之for循环
for i in range(3): print(i) print(i,"---") #Python的问题就在于,当循环结束以后,循环体中的临时变量i不会销毁,而是继续存在于执行环 ...
- Codeforces 448C Painting Fence(分治法)
题目链接:http://codeforces.com/contest/448/problem/C 题目大意:n个1* a [ i ] 的木板,把他们立起来,变成每个木板宽为1长为 a [ i ] 的栅 ...
- 约数 求反素数bzoj1053 bzoj1257
//约数 /* 求n的正约数集合:试除法 复杂度:O(sqrt(n)) 原理:扫描[1,sqrt(N)],尝试d能否整除n,若能,则N/d也能 */ ],m=; ;i*i<=n;i++){ ){ ...
- linux + docker + selenium grid 实现分布式执行selenium脚本
Selenium Grid 有两个概念 hub :主节点,你可以看作 "北京总公司的测试经理". node:分支节点,你可以看作 "北京总公司的测试小兵A" 和 ...
- C#--整型与字节数组byte[]之间的转换
using System; int i = 123;byte [] intBuff = BitConverter.GetBytes(i); // 将 int 转换成字节数组lob.Write ...
- Linux下搭建ruby on rails环境
要搭建的东西:Ruby 1.8.7,Rails 2.3.8,rubygem 1.3.7 1.安装ruby sudo apt-get install ruby-full 2.安装rubygem sudo ...
- ERP商品类型管理相关业务处理(三十五)
根据类型编号获取父类名称 -- ============================================= CREATE FUNCTION [dbo].[FN_getParentTyp ...
- thinkphp自定义分页类
先来看下这个分页的样式,没写css,确实丑 什么时候写样式再来上传下css吧...... 就是多一个页面跳转功能 先把这个代码贴一下 <?php namespace Component; cla ...