Chinaunix首页 | 论坛 | 博客
  • 博客访问: 48174
  • 博文数量: 7
  • 博客积分: 169
  • 博客等级: 入伍新兵
  • 技术积分: 85
  • 用 户 组: 普通用户
  • 注册时间: 2011-08-23 18:20
文章分类

全部博文(7)

文章存档

2012年(7)

我的朋友

分类: Java

2012-11-25 23:07:00

我们将讨论下面的类: 

1、具体类(和抽象类相对)java.util.Date 

2、抽象类java.text.DateFormat 和它的一个具体子类,java.text.SimpleDateFormat 

3、抽象类java.util.Calendar 和它的一个具体子类,java.util.GregorianCalendar 

 

在 JDK 1.1 之前,类 Date 有两个其他的函数。它允许把日期解释为年、月、日、小时、分钟和秒值。它也允许格式化和分析日期字符串。不过,这些函数的 API 不易于实现国际化。从 JDK 1.1 开始,应该使用 Calendar 类实现日期和时间字段之间转换,使用 DateFormat 类来格式化和分析日期字符串。Date 中的相应方法已废弃。 

 

具体的我就不说了!您看下下面的代码,再去看看API就懂他们常用了!


点击(此处)折叠或打开

  1. package com.hanchao.test;
  2.      
  3.     import java.text.SimpleDateFormat;
  4.     import java.util.Calendar;
  5.     import java.util.Date;
  6.     import java.util.GregorianCalendar;
  7.     import java.util.Random;
  8.      
  9.     /**
  10.      * 来测试一下此类:GregorianCalendar
  11.      * @author hanlw
  12.      */
  13.     public class Test {
  14.      
  15.         public static void main(String[] args) {
  16.              
  17.             /*****************************************
  18.              * 通过GregorianCalendar可以获取年月日时分秒的各自的值
  19.              */
  20.             GregorianCalendar cal = new GregorianCalendar();
  21.              
  22.             int curYear = cal.get(Calendar.YEAR);
  23.             int curMonth = cal.get(Calendar.MONTH)+1;
  24.             int curDate = cal.get(Calendar.DATE);
  25.             int curHour = cal.get(Calendar.HOUR_OF_DAY);
  26.             int curMinute = cal.get(Calendar.MINUTE);
  27.              
  28.             System.out.println(curYear + "年\t"
  29.                                + curMonth + "月\t"
  30.                                + curDate +"日\t"
  31.                                + curHour + "时\t"
  32.                                + curMinute + "分\n");
  33.              
  34.             /**********************************************
  35.              * Date的方法用的比较少了!用的比较少了!
  36.              */
  37.             Date date = new Date();
  38.             System.out.println("系统当前的时间:"+date.getTime() + "\n");
  39.              
  40.             /************************************************
  41.              * 常用到的。 注意大小写的区别啊!!
  42.              */
  43.             SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd" + "\n");
  44.             System.out.println("今天的日期为:\t"+sdf.format(date));
  45.      
  46.             SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM" + "\n");
  47.             System.out.println("输出年月:\t" +sdf2.format(date));
  48.              
  49.              
  50.             SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy-MM-dd HH");
  51.             System.out.println("某年月某日某时:\t" +sdf3.format(date) + "\n");
  52.              
  53.             SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH:mm");
  54.             System.out.println("某年某月某日某时某分:\t" + sdf4.format(date) +"\n");
  55.              
  56.             SimpleDateFormat sdf5 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  57.             System.out.println("某年某月某日某时某分某秒:\t" + sdf5.format(date));
  58.              
  59.             SimpleDateFormat sdf6 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:ms");
  60.             System.out.println("某年某月某日某时某分某秒某毫秒:\t" + sdf6.format(date)+"\n");
  61.              
  62.             /** 看看电子商务网站的订单的生成吧。*/
  63.             System.out.println("您的订单号:\t" +getNow() + "\n");
  64.         }
  65.      
  66.         /**
  67.          * 该方法常用来生成订单
  68.          * @return
  69.          */
  70.         public static String getNow() {
  71.             SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssms");//时间格式
  72.             //是随机数的生成(保证那一秒钟订单的不重复,如果您的业务量非常大时,我们可以把下面的1000改成10000000......)
  73.             Random random = new Random();
  74.             int index = random.nextInt(1000);
  75.             return sdf.format(new Date())+index;//返回当前时间对应的字符串+一个1000以内随机
  76.         }
  77.     }
具体的运行结果为:


原文作者:韩立伟原文地址 http://hanchaohan.blog.51cto.com/2996417/793309
阅读(1779) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~