android 计算所在周所在月的前后日期

  •        日期
    
  • @return

*/

public static String formatDateTime(long dateL, String formater) {

SimpleDateFormat sdf = new SimpleDateFormat(formater);

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

}

/**

  • 将日期以yyyy-MM-dd HH:mm:ss格式化

  • @param dateL

  •        日期
    
  • @return

*/

public static String formatDateTime(Date date, String formater) {

SimpleDateFormat sdf = new SimpleDateFormat(formater);

return sdf.format(date);

}

/**

  • 将日期字符串转成日期

  • @param strDate

  •        字符串日期
    
  • @return java.util.date日期类型

*/

public static Date parseDate(String strDate) {

DateFormat dateFormat = new SimpleDateFormat(DF_YYYY_MM_DD_HH_MM_SS);

Date returnDate = null;

try {

returnDate = dateFormat.parse(strDate);

} catch (ParseException e) {

Log.v(TAG, “parseDate failed !”);

}

return returnDate;

}

/**

  • 获取系统当前日期

  • @return

*/

public static Date gainCurrentDate() {

return new Date();

}

/**

  • 验证日期是否比当前日期早

  • @param target1

  •        比较时间1
    
  • @param target2

  •        比较时间2
    
  • @return true 则代表target1比target2晚或等于target2,否则比target2早

*/

public static boolean compareDate(Date target1, Date target2) {

boolean flag = false;

try {

String target1DateTime = ToolDateTime.formatDateTime(target1,

DF_YYYY_MM_DD_HH_MM_SS);

String target2DateTime = ToolDateTime.formatDateTime(target2,

DF_YYYY_MM_DD_HH_MM_SS);

if (target1DateTime.compareTo(target2DateTime) <= 0) {

flag = true;

}

} catch (Exception e1) {

System.out.println(“比较失败,原因:” + e1.getMessage());

}

return flag;

}

/**

  • 对日期进行增加操作

  • @param target

  •        需要进行运算的日期
    
  • @param hour

  •        小时
    
  • @return

*/

public static Date addDateTime(Date target, double hour) {

if (null == target || hour < 0) {

return target;

}

return new Date(target.getTime() + (long) (hour * 60 * 60 * 1000));

}

/**

  • 对日期进行相减操作

  • @param target

  •        需要进行运算的日期
    
  • @param hour

  •        小时
    
  • @return

*/

public static Date subDateTime(Date target, double hour) {

if (null == target || hour < 0) {

return target;

}

return new Date(target.getTime() - (long) (hour * 60 * 60 * 1000));

}

}

MainActivity

package com.yqy.yqy_date;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Date;

import android.app.Activity;

import android.os.Bundle;

import android.view.Menu;

import android.widget.TextView;

public class MainActivity extends Activity {

private TextView tv_week, tv_month;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

tv_week = (TextView) findViewById(R.id.tv_week);

tv_month = (TextView) findViewById(R.id.tv_month);

Date mDate = new Date();

Date sDate = null;

Date eDate = null;

String sstr = “”;

String estr = “”;

sDate = ToolDateTime.subDateTime(mDate, (mDate.getDay() - 1) * 24);

for (int i = 0; i < 15; i++) {

eDate = ToolDateTime.addDateTime(sDate, 6 * 24);

sstr = ToolDateTime.formatDateTime(sDate,

ToolDateTime.DF_YYYY_MM_DD);

estr = ToolDateTime.formatDateTime(eDate,

ToolDateTime.DF_YYYY_MM_DD);

tv_week.append(sstr + “~” + estr + “\n”);

sDate = ToolDateTime.addDateTime(eDate, 24);

}

SimpleDateFormat format = new SimpleDateFormat(ToolDateTime.DF_YYYY_MM_DD);

// 获取当前月第一天:

String first = “”;

String last = “”;

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级安卓工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Android)
img

总结

最后为了帮助大家深刻理解Android相关知识点的原理以及面试相关知识,这里放上相关的我搜集整理的Android开发中高级必知必会核心笔记,共计2968页PDF、58w字,囊括Android开发648个知识点,我把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包知识脉络 + 诸多细节。


以上分享【Android开发中高级必知必会核心知识笔记】七大模块整套学习资料均免费分享,需要的小伙伴,我已经上传到GitHub了,大家自取就可以了。白嫖可以,别忘了给我点个关注哈。

【Android开发中高级必知必会核心知识笔记】

网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。

网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。

2021年虽然路途坎坷,都在说Android要没落,但是,不要慌,做自己的计划,学自己的习,竞争无处不在,每个行业都是如此。相信自己,没有做不到的,只有想不到的。

虽然面试失败了,但我也不会放弃入职字节跳动的决心的!建议大家面试之前都要有充分的准备,顺顺利利的拿到自己心仪的offer。
156601)

网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。

网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。

2021年虽然路途坎坷,都在说Android要没落,但是,不要慌,做自己的计划,学自己的习,竞争无处不在,每个行业都是如此。相信自己,没有做不到的,只有想不到的。

虽然面试失败了,但我也不会放弃入职字节跳动的决心的!建议大家面试之前都要有充分的准备,顺顺利利的拿到自己心仪的offer。

  • 9
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值