java日期处理

常见的关于日期的问题


与之有关的类(详细信息查看API文档)


它们之间的关系:

Calendar类为扩充Date类而产生。

java.sql.Date、Time、Timestamp类用于处理数据库的日期,继承于java.util.Date.

java.sql.Date只有年月日;java.sql.Time只有时分秒;java.sql.Timestamp全部含有。


实例代码:

package com.java;

import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.TimeZone;

/**
 * 1.如何获取当前日期 
 * 2.如何对日期进行格式化 
 * 3.如何将一个字符串转化为日期 
 * 4.如何处理来自数据库的时间请见“JDBC日期处理”
 * */

public class TestDateAndTime {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		Date d = new Date();
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒");
		System.out.println("格式化的Date:" + sdf.format(d));

		Calendar c = Calendar.getInstance();
		c.setTime(d); // 使用给定的 Date 设置此 Calendar 的时间
		System.out.println("Calendar:" + c.get(Calendar.YEAR) + "年"
				+ (c.get(Calendar.MONTH) + 1) + "月");
		System.out.println("Calendar.getTime():" + c.getTime());

		long s = System.currentTimeMillis(); // 当前计算机时间和GMT时间(格林威治时间)1970年1月1号0时0分0秒所差的毫秒数。
		System.out.println("格式化的System.currentTimeMillis():" + sdf.format(s));

		System.out.println();

		String st = "2017-01-23 12:30:50.0";// 不是此格式可用正则表达式转为此格式
		Timestamp ts = Timestamp.valueOf(st);// 使用Timestamp.valueOf()方法对字符串进行转换
		System.out.println("字符串表示的时间:" + ts);

		Calendar cJapan = new GregorianCalendar(TimeZone.getTimeZone("Japan"));// 获取指定时区的格林威治日历
		System.out.println("日本时区的格林威治时间(小时):"
				+ cJapan.get(Calendar.HOUR_OF_DAY));
	}
}

/*
 结果:
格式化的Date:2017年10月23日21时33分27秒
Calendar:2017年10月
Calendar.getTime():Mon Oct 23 21:33:27 CST 2017
格式化的System.currentTimeMillis():2017年10月23日21时33分27秒

字符串表示的时间:2017-01-23 12:30:50.0
日本时区的格林威治时间(小时):22

 */


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值