Java-日期类与字符串类之间互转

涎涎原创约 932 字大约 3 分钟...JavaJava

118-Java-日期类与字符串类之间互转.mdopen in new window

注意

本博文仅供学术研究和交流参考,严禁将其用于商业用途。如因违规使用产生的任何法律问题,使用者需自行负责。

日期类

  • Date 类

    • java.util.Date。
    • Date 类表示指定的时间信息,可以精确到毫秒。
    • 不支持国际化。
    • 该类的许多方法已过时。
    • 获取当前系统时间:
new  Date();

现在我们更应该多使用 Calendar 类实现日期和时间字段之间转换,使用 DateFormat 类来格式化和分析日期字符串;Date 中的相应方法已废弃

  • Date类常用方法
方法含义
boolean after(Date when)测试此日期是否在指定日期之后
boolean before(Date when)测试此日期是否在指定日期之前
int compareTo(Date anotherDate)比较两个日期的顺序。如果参数 Date 等于此 Date,则返回值 0;如果此 Date 在 Date 参数之前,则返回小于 0 的值;如果此 Date 在 Date 参数之后,则返回大于 0 的值。
boolean equals(Object obj)比较两个日期的相等性。
  • Calendar 类

    • java.util.Calendar。
      • java.util.GregorianCalendar
    • 常用的日期处理的对象。可以设置自己的时区和国际化格式。
    • 是一个抽象类。
    • Calendar 抽象类定义了足够的方法,让我们能够表述日历的规则 。
    • 获取Calendar对象的实例
Calendar c = Calendar.getInstance();
  • 获取Calendar对象的实例:
Calendar c = Calendar.getInstance();
  • 设置Calendar实例所表示的时间:
c.set(2011,6,16);
  • 获取指定的时间属性
c.get(Calendar.YEAR);
  • Calendar类常用属性
属性含义
static int HOUR小时时间
static int MINUTE分时间
static int SECOND秒时间
static int DATE日期的Date部分
static int MONTH日期的Month部分
static int YEAR日期的年部分

SimpleDateFormat类

  • SimpleDateFormat类
    • java.text.SimpleDateFormat 。
    • 一个以与语言环境相关的方式来格式化和分析日期的具体类。是抽象类java.text.DateFormat类的子类。
    • SimpleDateFormat 使得可以选择任何用户定义的日期-时间格式的模式 。
  • SimpleDateFormat类的使用
    • 获取SimpleDateFormat的实例
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  • 将日期格式成指定的字符串
sdf.format(new Date());
  • 将格式化的字符串转换成日期对象
sdf.parse(“2011-07-16”);
  • SimpleDateFormat类中的模式字母
字母日期或时间元素
y
M年中的月份
d月份中的天数
E星期中的天数
aAm/pm 标记
H一天中的小时数(0-23)
ham/pm 中的小时数(1-12)
m小时中的分钟数
s分钟中的秒数
S毫秒数

示例代码:

package 日期类;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Test日期操作 {

	public static void main(String[] args) {

		//1.如何把日期----->String
		Date date = new Date();
		String d = date.toString();
		System.out.println(d);//格林威治时间 Fri Jul 12 09:22:38 CST 2019
		
		SimpleDateFormat sdf1 = new SimpleDateFormat();
		System.out.println(sdf1.format(date));//19-7-12 上午9:22
		
		SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//给个模式
		System.out.println(sdf2.format(date));//2019-07-12 09:25:02
		//2.如何把String ------> 日期
		String str1 = "2019-10-12";
		String str2 = "2018/11/23";
		
		SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy-MM-dd");//这里一定要指定模式
		SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy/MM/dd");//这里一定要指定模式
		Date d3 = null;
		Date d4 = null;
		try {
			d3 = sdf3.parse(str1);
			d4 = sdf4.parse(str2);
			System.out.println("d3: " + d3);//d3: Sat Oct 12 00:00:00 CST 2019
			System.out.println("d4: " + d4);//d4: Fri Nov 23 00:00:00 CST 2018
		} catch (ParseException e) {
			e.printStackTrace();
		}
	}
}

分割线


相关信息

以上就是我关于 Java-日期类与字符串类之间互转 知识点的整理与总结的全部内容,另附源码open in new window

上次编辑于:
贡献者: 涎涎
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.4