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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

【南京校区】开发之生成日期时间
SimpleDateFormat 简单格式化时间类       
                //此类用于大多数开发,即只要是把日期按照一定的格式给展示出来的情况。


"将日期类对象转成时间字符串"   //此方式在开发中运用较多

Date d = new Date();                                                        //获取当前时间对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");//创建日期格式化类对象,"yyyy/MM/dd HH:mm:ss"是我们希望的日期出现格式
System.out.println(sdf.format(d));


"将时间字符串转换成日期对象"

String str = "2000年08月08日 08:08:08";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");//"yyyy/MM/dd HH:mm:ss"是我们传入的字符串日期格式
Date d = sdf.parse(str);                                                //将时间字符串转换成日期对象
System.out.println(d);





Calendar 类: 日历类
                //如果需要获取日期中的每一个字段,需要用到此类。

        public static Calendar getInstance()        //创建对象
        public int get(int field)                                //通过字段获取值,字段在API中Calendar类里面 字段以Calendar.XXX的形式传入


        public void add(int field,int amount)        //修改方法,可以为负,对指定的字段进行向前减或向后加
        public final void set(int year,int month,int date)        //设置时间
                        重载 void set(int field, int value) ://把指定的字段修改成指定的值



代码示例:
        "获得每一个字段来拼接成我们想要的日期格式"
                                        //但是如果只是想要获取我们想要的日期格式,在实际开发中是用SimpleDateFormat。除非想装逼。


                Calendar c = Calendar.getInstance();                        //父类引用指向子类对象
                //System.out.println(c);                                        会把所有的属性都打印出来,对我们没有用,我们只需要对应的属性里面的值就可以。
                System.out.println(c.get(Calendar.YEAR));                //通过字段获取年
                System.out.println(c.get(Calendar.MONTH));                //通过字段获取月,但是月是从0开始编号的
                System.out.println(c.get(Calendar.DAY_OF_MONTH));//月中的第几天
                System.out.println(c.get(Calendar.DAY_OF_WEEK));//周日是第一天,周六是最后一天
               
---------------------------------------------------------------------------------------------------------------------


        "对日期进行修改"

                Calendar c = Calendar.getInstance();                        //父类引用指向子类对象
                //c.add(Calendar.MONTH, -1);                                        //对指定的字段进行向前减或向后加
                //c.set(Calendar.YEAR, 2000);                                        //修改指定字段
                c.set(2000, 7, 8);
               
                System.out.println(c.get(Calendar.YEAR) + "年" + getNum((c.get(Calendar.MONTH)+1))
                                + "月" + getNum(c.get(Calendar.DAY_OF_MONTH)) + "日" + getWeek(c.get(Calendar.DAY_OF_WEEK)));
                       
-----------------------------------------------------------------------------------------------------------------------
       
        public static String getWeek(int week) { //查表法  //1-7
                String[] arr = {"","星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
                        //因为日历类中的DAY_OF_WEEK,返回值 只有 1-7
                return arr[week];
        }
       

        /*
         * 如果是个数数字前面补0
         * 1,返回值类型String类型
         * 2,参数列表,int num
         */
        public static String getNum(int num) {
                return num > 9 ? "" + num : "0" + num;
        }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马