时间显示的工具类

104 篇文章 14 订阅
14 篇文章 0 订阅

       这是一个方便时间显示的工具类,比如很方便显示当前的年月日时分秒,或者只显示年月日等等。
       后面一个方法,可以很方便的比较两个时间的先后。

一.工具类的设计

package com.android.utils;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 这是一个时间转换的工具类
 * 
 * 计算机能识别下面的字母:"yyyy-MM-dd DD HH:mm:ss SSS"
 * y代表的是年份,M代表的是月份,d代表的当月的第几天,D代表的是当年的第几天,
 * H代表的是小时数,m代表的是分钟数,s代表的秒数,S代表的是毫秒数。这个常识是需要我们记住的。
 * 
 * *方法1:long getTimeLong()
 * 获取当前时间的毫秒数
 * 
 * *方法2:int getTimeInt(String filter)
 * 输入某种时间格式的字符串,显示当前时间它的数据,比如输入getTimeInt(“DD”)获取今日是当前月的天数
 * 
 * * 方法3:String getTimeString()
 * 获取当前时间的完整的格式,比如2016-11-11 8:20:20
 * 
 * * 方法4:String getTimeString(long time)
 * 输入一个long类型的数据,获取一个完整格式的时间字符串,获取到的格式和方法三一样
 * 
 * * 方法5: String getTimeString(long time, String filter)
 * 输入一个long类型的数据和一个自定义时间的格式的字符串,获取一个自定义的时间字符串,
 * 比如getTimeString(1111111L,“MM-dd”)获取的是毫秒数11111111的月分数和天数
 * 
 * * 方法6:String getTimeString( String filter) 
 * 输入某种时间格式的字符串,显示当前时间它的数据,比如输入getTimeString(“DD”)获取今日是当前月的天数
 * 这个方法和方法2相似,不过这里获取到的是字符串,只能用来做显示,而方法二获取到的是数字,可以用来显示和做相关运算。
* * 方法7:String getTimeLong( String filter,String date)
* 输入某种时间格式的字符串和对应时间格式的时间,显示它的毫秒数,比如输入getTimeString(“MM-dd”,“8-12”)获取8月12日的毫秒数
* 这个方法一般用于对两个时间进行比较,从而得出哪一个时间比较久
 *
 */

public class TimeUtils {


    /**
     * 获取当前时间的毫秒数
     */
    public static long getTimeLong(){
        return System.currentTimeMillis();
    }

    /**
     * 获取当时时间的年,月,日,时分秒
     * 这里获得的时int类型的数据,要输入对应的格式
     * 比如要获得现在时间的小时数,使用getTime(“MM”);
     */
    public static int getTimeInt(String filter){
        //
        SimpleDateFormat format = new SimpleDateFormat(filter);
        String time=format.format(new Date());
        return Integer.parseInt(time);
    }


    /**
     * 获取当前时间的完整显示字符串
     */
    public static final String getTimeString() {
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        return format.format(new Date(getTimeLong()));
    }

    /**
     * 获得某个时间的完整格式的字符串
     */
    public static final String getTimeString(long time) {
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        return format.format(new Date(time));
    }

    /**
     * 获得自定义格式的时间字符串
     */
    public static final String getTimeString(long time, String filter) {
        SimpleDateFormat format = new SimpleDateFormat(filter);
        return format.format(new Date(time));
    }

    /**
     * 获得自定义格式的当前的时间的字符串
     */
    public static final String getTimeString( String filter) {
        SimpleDateFormat format = new SimpleDateFormat(filter);
        return format.format(new Date(getTimeLong()));
    }

/**
 * 获取某个时间的毫秒数,
 * 一般作用于时间先后的对比
 * 第一个参数是时间的格式,第二个参数是时间的具体值
 */
public static Long getTimeLong(String filter, String date) {
    try {
        SimpleDateFormat format = new SimpleDateFormat(filter);
        Date dateTime = format.parse(date);
        return dateTime.getTime();
    } catch (Exception e) {
        e.printStackTrace();
    }

    return 0L;
}


}

二.调用演示

package com.lwz.amin;

import com.android.utils.TimeUtils;
/**
 *时间工具类的使用示范 
 */
public class TimeClass {

    public static void main(String[] args) {

                //获取当前时间的毫秒数
                System.out.println("当前时间的毫秒数:"+TimeUtils.getTimeLong());

                //获取当前时间的月份
                System.out.println("当前时间的月份:"+TimeUtils.getTimeInt("MM"));

                //获取当前时间的完整日期
                System.out.println("当前时间的完整日期:"+TimeUtils.getTimeString());

                //获取当前时间的年月日以及今天是今年的第几天
                System.out.println("当前时间的年月日:"+TimeUtils.getTimeString("yyyy年MM月dd日"));

                //获取当前时间是今年的第几天
                System.out.println("现在是今年的第:"+TimeUtils.getTimeString("DD")+"天");

                //获取自定义的毫秒数的时间的完整字符串,有时要在后面加L代表Long类型的数据
                System.out.println("毫秒数181818181818表示的时间是:"+TimeUtils.getTimeString(181818181818L));

                //获取自定义的毫秒数的时间的自定义时间格式的字符串,有时要在后面加L代表Long类型的数据
                System.out.println("毫秒数181818181818表示的月日是:"+TimeUtils.getTimeString(181818181818L,"MM-dd"));

/**
  * 比较两个时间的先后
  */
Long time1= TimeUtils.getTimeLong("yyyy-MM","2015-8");
Long time2= TimeUtils.getTimeLong("yyyy-MM","2014-12");
 Log.e("TAG",time1>time2?"2015-8时间比较久":"2014-12时间比较久");


    }

}

程序运行后显示的Log信息:
log

最后一个功能可以用于时间字符串的排序。

  • 5
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

峥嵘life

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值