java中时间类Date和Calendar的使用

简介:

<PRE class=java name="code">package cn.com;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

/**
 * @author ty 1、DateFormat可以直接使用,的那其本身是一个抽象类,可以根据Localc指定区域不同得到不同的日期效果
 *         2、SimpleDateFormat类时DateFormat类的子类;一般需要使用simpleDateFormate类来完成
 */
public class DateDemo {

 public static void main(String[] args) {

  // dateDemo();
  // dateDemo2();
  // dateFormat();
  simpleDateFormat();

 }

 /* date使用 */
 private static void dateDemo() {
  Date date = new Date();
  System.out.println("当前日期:" + date);
 }

 /*
  * calendar使用:抽象类,需要通过实例化本类对象,可以通过calendar获得完整日期,获取的日期为0-11月,所以要加1,
  * 通过此类可以轻松获得完整日期
  */
 private static void dateDemo2() {
  GregorianCalendar calendar = new GregorianCalendar();
  System.out.println(calendar.get(Calendar.MONTH));

 }

 /*
  * DateFormat,是专门格式化日期的操作,抽象类,内部提供实例化操作。得到日期的dateformat对象:getdateInstance;
  * 得到日期时间的对象:getdateTimeinstance
  */
 private static void dateFormat() {
  DateFormat df1 = DateFormat.getDateInstance();
  DateFormat df2 = DateFormat.getDateTimeInstance();
  System.out.println("DATE:" + df1.format(new Date()));
  System.out.println("DATETIME:" + df2.format(new Date()));
 }

 /*
  * simpleDateFormat类。yyyy表示年,MM表示月,dd表示日,HH表示时,mm表示分,ss表示秒,SSS表示毫秒。
  * 使用的时候要注意在构造对象时配匹
  */
 private static void simpleDateFormat() {
  String strDate = "2008-10-19 10:11:30.345";
  String pat1 = "yyyy-MM-dd HH:mm:ss.SSSS";
  String pat2 = "yyyy年MM月dd日 HH时mm分ss秒SSSS毫秒";
  SimpleDateFormat sdf1 = new SimpleDateFormat(pat1);
  SimpleDateFormat sdf2 = new SimpleDateFormat(pat2);
  Date d = null;
  try {
   d = sdf1.parse(strDate);// 将给定的字符串中的日期提取出来
  } catch (ParseException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  System.out.println(sdf2.format(d));// 将日期变为新的格式
 }
}
</PRE><BR>
<BR>
<PRE></PRE>
<PRE></PRE>

目录
相关文章
|
2天前
|
Java 编译器
Java Character 类
4月更文挑战第13天
|
3天前
|
存储 Java
Java基础教程(7)-Java中的面向对象和类
【4月更文挑战第7天】Java是面向对象编程(OOP)语言,强调将事务抽象成对象。面向对象与面向过程的区别在于,前者通过对象间的交互解决问题,后者按步骤顺序执行。类是对象的模板,对象是类的实例。创建类使用`class`关键字,对象通过`new`运算符动态分配内存。方法包括构造函数和一般方法,构造函数用于对象初始化,一般方法处理逻辑。方法可以有0个或多个参数,可变参数用`类型...`定义。`this`关键字用于访问当前对象的属性。
|
7天前
|
Java Shell
Java 21颠覆传统:未命名类与实例Main方法的编码变革
Java 21颠覆传统:未命名类与实例Main方法的编码变革
10 0
|
7天前
|
Java
Java 15 神秘登场:隐藏类解析未知领域
Java 15 神秘登场:隐藏类解析未知领域
11 0
|
9天前
|
安全 Java
append在Java中是哪个类下的方法
append在Java中是哪个类下的方法
21 9
|
存储 安全 Java
看山聊Java:开始使用 Java8 中的时间类
ava8 之前,我们常用的时间类有java.util.date、java.util.Calendar和java.util.Timezone。还会有一些不那么常用的,java.sql.Date、java.sql.TimeStamp。
133 0
看山聊Java:开始使用 Java8 中的时间类
|
8天前
|
安全 算法 Java
深入理解Java并发编程:线程安全与性能优化
【4月更文挑战第11天】 在Java中,高效的并发编程是提升应用性能和响应能力的关键。本文将探讨Java并发的核心概念,包括线程安全、锁机制、线程池以及并发集合等,同时提供实用的编程技巧和最佳实践,帮助开发者在保证线程安全的前提下,优化程序性能。我们将通过分析常见的并发问题,如竞态条件、死锁,以及如何利用现代Java并发工具来避免这些问题,从而构建更加健壮和高效的多线程应用程序。
|
1天前
|
安全 Java
java多线程(一)(火车售票)
java多线程(一)(火车售票)
|
1天前
|
安全 Java 调度
Java并发编程:深入理解线程与锁
【4月更文挑战第18天】本文探讨了Java中的线程和锁机制,包括线程的创建(通过Thread类、Runnable接口或Callable/Future)及其生命周期。Java提供多种锁机制,如`synchronized`关键字、ReentrantLock和ReadWriteLock,以确保并发访问共享资源的安全。此外,文章还介绍了高级并发工具,如Semaphore(控制并发线程数)、CountDownLatch(线程间等待)和CyclicBarrier(同步多个线程)。掌握这些知识对于编写高效、正确的并发程序至关重要。
|
1天前
|
安全 Java 程序员
Java中的多线程并发编程实践
【4月更文挑战第18天】在现代软件开发中,为了提高程序性能和响应速度,经常需要利用多线程技术来实现并发执行。本文将深入探讨Java语言中的多线程机制,包括线程的创建、启动、同步以及线程池的使用等关键技术点。我们将通过具体代码实例,分析多线程编程的优势与挑战,并提出一系列优化策略来确保多线程环境下的程序稳定性和性能。