Date和String相互转换(重点)

Date和String相互转换(重点)

**桥梁**:
   SimpleDateFormat
**作用:**
   SimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类。它允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)和规范化。

SimpleDateFormat类的使用:

构造方法:

 public SimpleDateFormat()用默认的模式和默认语言环境的日期格式符号构造 SimpleDateFormat
 public SimpleDateFormat(String pattern):创建格式化/解析器对象 提供一个参数:模式

以下的模式:                          模式的表示方法


            Year            年           y               2017    yyyy
            Month           年终的月份       M
            Number          月份中的天数          d   
            小时                      H
            分钟                      m
            分钟中的秒数                  s

Date—>String

 public final String format(Object obj)格式化一个对象以生成一个字符串要使用DateFormat这个类:但是抽象类了,使用子类进行实例化SimpleDateFormat

String—->Date
public Object parseObject(String source)解析字符串的文本,生成 Date。

代码:

  public static void main(String[] args) throws ParseException {
    Date d = new Date();

    String s = dateToString(d);
    System.out.println(s);

    Date d1 = stringToDate("2018-3-16");
    System.out.println(d1);
}
 public static String dateToString(Date d){
     SimpleDateFormat sdf = new SimpleDateFormat("y-M-d");

     String s = sdf.format(d);
     return s;
 }
 public static Date stringToDate(String s ) throws ParseException{

// SimpleDateFormat sdf = new SimpleDateFormat(“y-M-d”);
// Date d = sdf.parse(s);
// return d;
return new SimpleDateFormat(“y-M-d”).parse(s);
}

代码结果

2017-7-29
Fri Mar 16 00:00:00 CST 2018

需求:
键盘录入你的出生年月日,算一下你来到这个世界多少天?

代码;
public static void main(String[] args) throws ParseException {
//键盘录入
Scanner sc = new Scanner(System.in);

    //接收数据
    System.out.println("请您输入您的出生年月日:");
    String s = sc.nextLine();

    long now = System.currentTimeMillis();

    SimpleDateFormat sdf =new SimpleDateFormat("y-M-d");
    Date d = sdf.parse(s);
    long old = d.getTime();

    System.out.println("您来到世界已经"+(now-old)/1000/60/60/24+"天了");
}

代码结果;

请您输入您的出生年月日:
1996-3-16
您来到世界已经7805天了

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值