android 对不同日期和时间的格式方法的封装,android面试基础

37 阅读3分钟

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;

}

/**

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

  • @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

*/

最后

希望大家能有一个好心态,想进什么样的公司要想清楚,并不一定是大公司,我选的也不是特大厂。当然如果你不知道选或是没有规划,那就选大公司!希望我们能先选好想去的公司再投或内推,而不是有一个公司要我我就去!还有就是不要害怕,也不要有压力,平常心对待就行,但准备要充足。最后希望大家都能拿到一份满意的 offer !如果目前有一份工作也请好好珍惜好好努力,找工作其实挺累挺辛苦的。

这里附上上述的面试题相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司19年的面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。

由于篇幅有限,这里以图片的形式给大家展示一小部分。可以点击GitHub免费获取