Java学习提要——日期处理类

来源:互联网 发布:java模块化开发思路 编辑:程序博客网 时间:2024/04/29 21:38

1.日期打印Date类

java里面提供一个java.util.Date的类,它直接就表示当前系统的时间
例:

import java.util.Date;public class Nice {    public static void main(String args[]) {        Date date = new Date();        System.out.println(date);  //输出对象信息    }}//输出格式,不符合习惯:Sun Sep 11 21:00:00 CST 2016

先看下几个重要的构造方法:

无参构造: public Date();
有参构造: public Date(long date) //接收long型数据
转换为long型: public long getTime()

//Date与long间的转换import java.util.Date;public class Nice {    public static void main(String args[]) {        long cur = System.currentTimeMillis();  //取得当前日期时间以long形式返回        Date date = new Date() ;        System.out.println(date); //输出对象信息        System.out.println(date.getTime());  //输出对象信息    }}//结果有点奇怪,不过就是这样

2.日期格式化SimpleDateFormat(核心)

java.text是一个专门实现国际化程序的安装包,而SimpleDateFormat是一个专门处理格式化日期的工具类,能将Date型的对象转换为String型的形式表现出来

构造方法: public SimpleDateFormat(String pattern) //需要传递转换格式
将Date转换为String:public final String format(Date date);
将String转换为Date:public Date parse(String source) throws ParseException

转换关键在于格式上,对于常见转换单位:年(yyyy)、月(MM)、日(dd)、时(HH)、分(mm)、秒(ss)、毫秒(SS)

例:

//将日期转换为字符串import java.util.Date;import java.text.SimpleDateFormat;public class Nice {    public static void main(String args[]) {        Date date = new Date() ;        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS") ;        String str = sdf.format(date) ;  //将Date型变成String型        System.out.println(str) ;    }}
//将字符串转换为日期import java.util.Date;import java.text.SimpleDateFormat;public class Nice {    public static void main(String args[]) throws Exception{  //抛异常         String str = "2111-11-11 11:11:11.111" ;        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS") ;        Date date = sdf.parse(str) ;  //将字符串变成日期型数据        System.out.println(date) ;    }}//如果日期的月份不对,会自动进位//如果字符串与我们要转换的格式不符合,那么就会有异常

3.日期计算 Calendar类

一般来说Calendar主要是进行一些简单的日期计算的,
Calendar类的定义:

public abstract class Calendar
extends Oobject
implement Serializable,Cloneable,Comparable< Calendar >

这是一个抽象类,本来应该依靠进行对象的实例化操作,但是这个类里提供一个static方法,即: public static Calendar getInstance()
例:

import java.util.Calendar ;public class Nice {    public static void main(String args[]) throws Exception{        Calendar cal = Calendar.getInstance() ;  //取得本类对象        StringBuffer buf = new StringBuffer() ;        buf.append(cal.get(Calendar.YEAR)).append("-") ;            buf.append(cal.get(Calendar.MONTH) + 1).append("-") ;        buf.append(cal.get(Calendar.DAY_OF_MONTH)).append(" ") ;        buf.append(cal.get(Calendar.HOUR_OF_DAY)).append(":") ;        buf.append(cal.get(Calendar.MINUTE)).append(":") ;        buf.append(cal.get(Calendar.SECOND)).append("") ;        System.out.println(buf) ;    }}//可以输出当前的日期

上面的代码可以发现,若是进行日期的计算此类更方便
在想要计算的日期后面加上数字即可

0 0
原创粉丝点击