A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© jiangkaizhuo 中级黑马   /  2016-4-6 00:25  /  740 人查看  /  7 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

DateFormat(☆☆☆☆☆) 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。
           是抽象类,所以使用其子类SimpleDateFormat
        DateFormat的成员方法:
                public final String format(Date date):将一个没有格式的时间对象 格式化 成一个有格式的代表时间的一个字符串
                public Date parse(String source):将一个有格式的代表时间的一个字符串 解析 成一个时间对象
       
        Date -->String
                Date d = new Date();
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
                String time = sdf.format(d);
        String --> Date
                String s ="2016年"
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy年");
                Date d = sdf.parse(s);

        代码演示:
        public static void main(String[] args) throws ParseException {
                //demo1();
                //demo2();
                //demo3();
               
                //将时间字符串转换成日期对象
                String str = "2000年08月08日 08:08:08";
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
                Date d = sdf.parse(str);                                                //将时间字符串转换成日期对象
                System.out.println(d);
        }

        public static void demo3() {
                Date d = new Date();                                                        //获取当前时间对象
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");//创建日期格式化类对象
                System.out.println(sdf.format(d));                                //将日期对象转换为字符串
        }

        public static void demo2() {
                Date d = new Date();                                        //获取当前时间对象
                SimpleDateFormat sdf = new SimpleDateFormat();                //创建日期格式化类对象
                System.out.println(sdf.format(d));                         //88-6-6 下午9:31
        }

       
        案例:算一下你来到这个世界多少天?
       
                public static void main(String[] args) throws ParseException {
                                                                                        //1,将生日字符串和今天字符串存在String类型的变量中
                        String birthday = "1983年07月08日";
                        String today = "2088年6月6日";
                                                                                        //2,定义日期格式化对象
                        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
                                                                                        //3,将日期字符串转换成日期对象
                        Date d1 = sdf.parse(birthday);
                        Date d2 = sdf.parse(today);
                                                                                        //4,通过日期对象后期时间毫秒值
                        long time = d2.getTime() - d1.getTime();
                                                                                        //5,将两个时间毫秒值相减除以1000,再除以60,再除以60,再除以24得到天
                        System.out.println(time / 1000 / 60 / 60 / 24 );
                }

7 个回复

倒序浏览
别玩太晚了,早点休息
回复 使用道具 举报
huhemingtiancai 来自手机 中级黑马 2016-4-6 00:44:03
藤椅
睡觉啦。
回复 使用道具 举报
如果只是求你出生到现在的的天数很简单好吧!!!!!
1)通过求当前毫秒值的方法求出现在的毫秒值:
2) 再把电脑时间设置成你出生的年月日;
3)再求一次当前毫秒值;
4)打印这两者的差!这可精确到毫秒了哦!!!

回复 使用道具 举报
好厉害的楼主
回复 使用道具 举报
学到了,多谢楼主~
回复 使用道具 举报
学习了,多谢多谢
回复 使用道具 举报
还可以算两个人相差多少天出生
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马