Java中由Calendar类获取的月、天和小时的简单处理

原创 2017年01月03日 12:26:58

在Java中,Calendar是日期处理的一个重要的类。但是,我们使用Calendar获取的月份,天,小时等可能需要进行简单的处理才能满足我们的需要。比如,月份范围是0-11,而我们可能需要的是1-12;返回值是1位整数,我们可能需要转换成2位整数等。下面是一个非常简单的小例子:

package com.qs.number;

import java.util.Calendar;
import java.util.HashMap;
import java.util.Map;
import org.junit.Test;

public class Utils {

    public static Map<String, String> dealMonthDayHour(int month, int day, int hour) {

        Map<String, String> month_day_hour = new HashMap<String, String>();

        month = month % 12 + 1;// get the real month 
        month_day_hour.put("month", dealZeroToNine(month));
        month_day_hour.put("day", dealZeroToNine(day));
        month_day_hour.put("hour", dealZeroToNine(hour));

        return month_day_hour;
    }

    public static String dealZeroToNine(int num) {
        if (num >= 1 && num <= 9) {
            return "0" + num;
        }
        return "" + num;
    }

    //
    //
    //
    //

    @Test
    public void showYearMonthDayHour() {
        Calendar calendar = Calendar.getInstance();
        String year = String.valueOf(calendar.get(Calendar.YEAR));
        Map<String, String> month_day_hour = Utils.dealMonthDayHour(calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH), calendar.get(Calendar.HOUR_OF_DAY));
        String month = month_day_hour.get("month");
        String day = month_day_hour.get("day");
        String hour = month_day_hour.get("hour");
        System.out.println(year + "\t" + month + "\t" + day + "\t " + hour);
    }

}

输出如下:

2017    01  03   12
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Java 格式化时间获取小时和分钟 并按照24小时制

SimpleDateFormat sdf = new SimpleDateFormat("HH:mm"); Time pro = rs.getTime("program_time"); Str...

关于时间,日期,星期,月份的算法(Java中Calendar的使用方法)

package cn.outofmemory.codes.Date; import java.util.Calendar; import java.util.Date; public class ...

Calendar类 Calendar.HOUR(12小时制) 和 Calendar.HOUR_OF_DAY(24小时制)

今天发现调度器设置成上午的时间执行,下午的时间不执行。 查看代码发现:Calendar.HOUR_OF_DAY (24小时)设置成 Calendar.HOUR (12小时)造成的。时间不对 int...

java日期Calendar类获取年月日小时分秒星期

package com.ecode.li.date;   import java.io.FileNotFoundException; import java.io.FileOutputStream; ...
  • Mydwr
  • Mydwr
  • 2013-10-25 14:34
  • 9192

Java取时间(12小时制和24小时制)

Java时间设为二十四小时制和十二小时制的区别:1) 二十四小时制: “yyyy-MM-dd HH:mm:ss”2)十二小时制: “"yyyy-MM-dd hh:mm:ss"”  例(二十四小时制):...

java Date简单的 获得时分秒代码

package com.util;   import java.text.DateFormat;   import java.util.Calendar;   import java.util....

java获取当前时间12/24小时制

一个小细节 使用Date d = new Date(); SimpleDateFormat格式化时间时,会用yyyymmddhhmmss等 yyyy年 MM月 dd日 hh小时(*注意 h...

java Calendar类获取时间的前一天和后一天

有两个方法:分别是set和roll方法,这两个方法的具体使用方法如下: import java.util.Calendar; public class DateUtil { /** * @...

Java中得到小时、分钟、判断当前时间在不在某个时间之间或之前或之后

Calendar ncalendar = Calendar.getInstance(); //小时 System.out.println(ncalendar.get(Calendar.HOUR_O...

Java获取当前时间的年月日方法

package com.ob; import java.text.ParseException; import java.text.SimpleDateFormat; import java.uti...
  • kookob
  • kookob
  • 2011-10-18 17:13
  • 233308
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)