java-SimpleDateFormatDemo & BirthDemo

java日期格式设置,以及案例BirthDemo

 1 package com.example;
 2 import java.text.ParseException;
 3 import java.text.SimpleDateFormat;
 4 import java.util.Date;
 5 /**
 6  * SimpleDateFormatDemo.java Description:根据给定的日期格式字符串,
 7  * 通过SimpleDateFormat在String和Date之间相互转换
 8  *
 9  * @author raizoo
10  * Created on 17-7-17 下午9:24
11  * @version 1.0
12  * @since JDK8.0
13  *
14  * @thows Exception:无
15  */
16 public class SimpleDateFormatDemo {
17     public static void main(String[] args) throws ParseException {
18         Date date = new Date();
19         System.out.println(date);  //输出Date默认的toString方法的返回值
20
21         //希望输出格式:2014-8-13 21:13:47
22         String dateformat = "yyyy-MM-dd HH:mm:ss E a";
23
24         /**
25          * 导入包:java.text.SimpleDateFormat
26          * @param Stirng dateformat
27          */
28         SimpleDateFormat sdf = new SimpleDateFormat(dateformat);  //按dateformat格式转换--目标格式
29         String str = sdf.format(date);  //format方法return值类型为string
30         System.out.println(str);
31
32         /**
33          * parse(Stirng source) Description:
34          * 通过simpledateform的parse方法,解析字符串str1的格式,并转化为date()方法的字符串日期输出格式.
35          *
36          * @param String source
37          * @return Date类型 date
38          * @thows Exception: java.text.ParseException
39          */
40         String str1 = "2009-08-19 20:19:22";
41         String str2 = "yyyy-MM-dd HH:mm:ss";
42         SimpleDateFormat simpform = new SimpleDateFormat(str2);
43         Date dat = simpform.parse(str1);
44         System.out.println(dat);
45
46     }
47 }

案例:BirthDemo

 1 package com.example;
 2 import java.util.Scanner;
 3 import java.util.Date;
 4 import java.text.SimpleDateFormat;
 5 import java.text.ParseException;
 6 /**
 7  * BirthDemo.java Description:输入一个生日,计算距今为止多少天.
 8  *
 9  * @author raizoo
10  * Created on 17-7-17 下午10:47
11  * @version 1.0
12  * @since JDK8.0
13  *
14  * @thows Exception:无
15  */
16 public class BirthDemo {
17    public static void main(String[] args) throws ParseException {
18        //输入生日
19        Scanner scan = new Scanner(System.in);
20        System.out.print("输入一个生日(格式:1980-08-03 12:31:17):");
21        String str1 = scan.nextLine();  //写入1980-08-13 12:31:17
22        System.out.println();
23        String str2 = "yyyy-MM-dd HH:mm:ss";
24
25        //把输入的生日格式转换成date()方法格式
26        SimpleDateFormat simpform = new SimpleDateFormat(str2);
27        Date date1 = simpform.parse(str1);
28        long dat = date1.getTime();  //生日距计算机元年毫秒数
29
30        Date date = new Date();
31        long da = date.getTime();  //目前距计算机元年毫秒数
32
33        long target = (da-dat)/(24*60*60*1000);  //距今xx天
34        int year = (int)target/365;
35        System.out.println("距今"+year+"年");
36    }
37 }
时间: 2024-10-15 02:49:53

java-SimpleDateFormatDemo & BirthDemo的相关文章

Java 时间日期类

1.Date 1 package demo03; 2 3 import java.util.Date; 4 5 public class DateDemo { 6 public static void main(String[] args) { 7 //无参构造方法, 用来创建当前日期时间的Date对象 8 Date d = new Date(); 9 System.out.println(d); 10 11 //long型参数作为构造方法, 用来创建指定时间的日期对象, 参数表示毫秒数 12

黑马程序员_Java异常 Java常用库类

Java异常 1,异常的基本概念 异常是导致程序中断运行的一种指令流,它是在运行时期发生的不正常的情况,在Java中,一切的异常都秉着面向对象的设计思想,所有的异常都是以对象和类的形式存在的. 2,异常类的继承结构 在整个Java的异常结构中,实际上有两个最常用的类,Exception和Error,这两个类分别是Throwable的子类 Exception:一般表示的是程序中出现的问题,可以直接使用try....catch处理 Error:一般之的是JVM的错误,程序中无法处理. 3,Java的

Java SE基础部分——常用类库之SimpleDateFormat(日期格式化)

取得当前日期,并按照不同日期格式化输入.代码如下: 1 // 20160618 SimpleDateFomat类的使用 日期格式化 练习 2 package MyPackage; //自己定义的包 3 4 import java.text.SimpleDateFormat; //导入需要的SimpleDateFormat包 5 import java.util.Date; //导入需要的Date包 6 7 class MyDateDemo { // 定义的MyDateDemo类 8 privat

Java基础十三

1 正则表达式 1.1 正则表达式的引入 示例:校验QQ,要求必须是5-15位数字,并且不能以0开头 package com.xuweiwei; import java.util.Scanner; public class QQDemo { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入你的QQ号码:"); String qq

Java多线程学习(吐血超详细总结)

林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 目录(?)[-] 一扩展javalangThread类 二实现javalangRunnable接口 三Thread和Runnable的区别 四线程状态转换 五线程调度 六常用函数说明 使用方式 为什么要用join方法 七常见线程名词解释 八线程同步 九线程数据传递 本文主要讲了java中多线程的使用方法.线程同步.线程数据传递.线程状态及相应的一些线程函数用法.概述等. 首先讲一下进程和线程

Java TM 已被阻止,因为它已过时需要更新的解决方法

公司的堡垒机需要通过浏览器登陆,且该堡垒机的网站需要Java的支持,最近通过浏览器登陆之后总是提示"java TM 已被阻止,因为它已过时需要更新的解决方法"导致登陆之后不能操作, 但是操作系统中确实已经安装了比较新的JDK,安装的JDK版本是jdk-7u67-windows-i586,因为太烦人,所以决定搞清楚报错的原因,一劳永逸,彻底解决这个问题 准备工作:安装JDK,安装版本jdk-7u67-windows-i586.exe,因为机器的Eclipse还依赖64位的JDK,所以另安

Java四种线程池newCachedThreadPool,newFixedThreadPool,newScheduledThreadPool,newSingleThreadExecutor

介绍new Thread的弊端及Java四种线程池的使用,对Android同样适用.本文是基础篇,后面会分享下线程池一些高级功能. 1.new Thread的弊端 执行一个异步任务你还只是如下new Thread吗? Java new Thread(new Runnable() { @Override public void run() { // TODO Auto-generated method stub } }).start(); 1 2 3 4 5 6 7 new Thread(new

由@NotNull 注解引出的关于Java空指针的控制(转)

Java 小技巧和在java应用避免NullPonintException的最佳方法 在java应用程序中,一个NullPonintException(空指针异常)是最好解决(问题)的方法.同时,空指针也是写健壮的顺畅运行的代码的关键.“预防好过治疗”这句话也同样适用于令人不爽的NullPonintException.通过应用防御性的编码技术和在遵守多个部分之间的约定,你可以再很大程度上避免NullPointException.下面的这些java小技巧可以最小化像!=null这种检查的代码.作为

Java注解(2)-注解处理器(运行时|RetentionPolicy.RUNTIME)

如果没有用来读取注解的工具,那注解将基本没有任何作用,它也不会比注释更有用.读取注解的工具叫作注解处理器.Java提供了两种方式来处理注解:第一种是利用运行时反射机制:另一种是使用Java提供的API来处理编译期的注解. 反射机制方式的注解处理器 仅当定义的注解的@Retention为RUNTIME时,才能够通过运行时的反射机制来处理注解.下面结合例子来说明这种方式的处理方法. Java中的反射API(如java.lang.Class.java.lang.reflect.Field等)都实现了接