写点什么

android 对不同日期和时间的格式方法的封装,46 道面试题带你了解高级 Android 面试

发布于: 2 小时前
  • 判断两个时间是否属于同一天

  • @param time1

  • @param time2

  • @return


*/


public boolean isSameDay(long time1, long time2) {


Calendar calen = Calendar.getInstance();


calen.setTimeInMillis(time1);


int day1 = calen.get(Calendar.DAY_OF_YEAR);


calen.setTimeInMillis(time2);


int day2 = calen.get(Calendar.DAY_OF_YEAR);


return day1 == day2;


}


/**


  • 通过已知参数返回当前时间的年份

  • @param time

  • @return


*/


public int getYear(long time) {


Calendar calen = Calendar.getInstance();


calen.setTimeInMillis(time);


return calen.get(Calendar.YEAR);


}


/**


  • 通过已知参数返回当前时间的分月(我能识别的 1,2,3...)

  • @param time

  • @return


*/


public int getMonth(long time) {


Calendar calen = Calendar.getInstance();


calen.setTimeInMillis(time);


return calen.get(Calendar.MONTH) + 1;


}


/**



    《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
    浏览器打开:qq.cn.hn/FTe 免费领取
    复制代码


    通过已知参数返回当前时间的日期(月份的)


    • @param time

    • @return


    */


    public int getDayOfMonth(long time) {


    Calendar calen = Calendar.getInstance();


    calen.setTimeInMillis(time);


    return calen.get(Calendar.DAY_OF_MONTH);


    }


    /**


    • 通过已知参数返回当前时间的日期(年份的)

    • @param time

    • @return


    */


    public int getDayOfYear(long time) {


    Calendar calen = Calendar.getInstance();


    calen.setTimeInMillis(time);


    return calen.get(Calendar.DAY_OF_YEAR);


    }


    /**


    • 通过给定的时间,返回我想要的日期形式

    • @param time

    • @return


    */


    public String getMyDate(long time) {


    return getMonth(time) + "月/" + getDayOfMonth(time);


    }


    /**


    • 通过给定的时间,返回我想要的日期形式

    • @param time

    • @return


    */


    public String getMyDateOne(long time) {


    return getMonth(time) + "-" + getDayOfMonth(time);


    }


    /**


    • 通过给定时间,返回小时和分钟的时间形式

    • @param time

    • @return


    */


    public String getHourMinute(long time) {


    Calendar calen = Calendar.getInstance();


    calen.setTimeInMillis(time);


    String hour = calen.get(Calendar.HOUR_OF_DAY) + "";


    String minute = calen.get(Calendar.MINUTE) + "";


    if (minute.length() == 1) {


    minute = "0" + minute;


    }


    return hour + ":" + minute;


    }


    /**


    • @param time

    • @return

    • @描述:得到小时的时间形式


    */


    public String getHour(long time) {


    Calendar calen = Calendar.getInstance();


    calen.setTimeInMillis(time);


    String hour = calen.get(Calendar.HOUR_OF_DAY) + "";


    return hour;


    }


    /**


    • @param time

    • @return

    • @描述:得到分钟的时间形式


    */


    public String getMinute(long time) {


    Calendar calen = Calendar.getInstance();


    calen.setTimeInMillis(time);


    String minute = calen.get(Calendar.MINUTE) + "";


    return minute;


    }


    /**


    • @param time

    • @return

    • @描述:得到固定格式的月和日 07-13


    */


    public String getDateTime(long time) {


    SimpleDateFormat sdf = new SimpleDateFormat("MM-dd");


    return sdf.format(new Date(time));


    }


    /**


    • @param time

    • @return

    • @描述:得到固定格式的月和日 2015-07-13


    */


    public String getYearOrMonthOrDay(long time) {


    SimpleDateFormat sdf = new SimpleDateFormat("MM-dd");


    return sdf.format(new Date(time));


    }


    /**


    • @param time

    • @return

    • @描述:得到固定格式的分和秒 10:30


    */


    public String getMinuteOrSeconds(long time) {


    SimpleDateFormat sdf = new SimpleDateFormat("hh:mm");


    return sdf.format(new Date(time));


    }


    /**


    • @param time

    • @return

    • @描述:得到固定格式的月和日


    */


    public String getDayOrMonthOrYear(long time) {


    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");


    return sdf.format(new Date(time));


    }


    /**


    • @param time

    • @return

    • @描述:得到固定格式的月和日


    */


    public String getDayOrMonthOrYear2(long time) {


    SimpleDateFormat sdf = new SimpleDateFormat("MM 月 dd 日");


    return sdf.format(new Date(time));


    }


    public String getDayOrMonthOrYear1(long time) {


    SimpleDateFormat sdf = new SimpleDateFormat("MM-dd HH:mm");


    return sdf.format(new Date(time));


    }


    /**


    • @param time

    • @return

    • @描述:得到固定格式的月和日 27/01/16


    */


    public String getCollectionDate(long time) {


    SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yy");


    return sdf.format(new Date(time));


    }


    public String dateFormat2(Date date){


    return new SimpleDateFormat("yyyy 年-MM 月-dd 日 HH:mm:ss", Locale.getDefault()).format(date);


    }


    /**


    • 计算 long 类型的时间是一天的下午还是上午

    • HH 是 24 小时制的时间

    • hh 是 12 小时制的时间

    • @param time

    • @return


    */


    public String getTimeDifference(long time){


    SimpleDateFormat sdf = new SimpleDateFormat("HH");


    int hour = Integer.parseInt(sdf.format(new Date(time)));


    System.out.println("hour = "+hour);


    if (hour<=12){


    return "AM";


    }else{


    return "PM";


    }


    }


    /**


    • 计算 long 类型的时间是一天的下午还是上午

    • HH 是 24 小时制的时间

    • hh 是 12 小时制的时间

    • @param time

    • @return


    */


    public String getTimeDifferences(long time){


    SimpleDateFormat sdf = new SimpleDateFormat("HH:MM");


    int hour = Integer.parseInt(sdf.format(new Date(time)));


    System.out.println("hour = "+hour);


    if (hour<=12){

    评论

    发布
    暂无评论
    android 对不同日期和时间的格式方法的封装,46道面试题带你了解高级Android面试