200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 【java】【kotlin】判断当前日期是星期几 是否为月底;获取当前季度起始时间

【java】【kotlin】判断当前日期是星期几 是否为月底;获取当前季度起始时间

时间:2021-12-10 12:27:30

相关推荐

【java】【kotlin】判断当前日期是星期几 是否为月底;获取当前季度起始时间

用kotlin写的

java代码用intellij可互转,此处不再贴出

判断当前日期是星期几

/*** 判断当前日期是星期几*/fun getWeekOfDate(dt: Date): Int {val weekDays = arrayOf(7, 1, 2, 3, 4, 5, 6)val cal = Calendar.getInstance()cal.time = dtvar w = cal[Calendar.DAY_OF_WEEK] - 1if (w < 0) {w = 0}return weekDays[w]}

判断当前日期是否为月底

/*** 判断当前日期是否为月底*/fun isLastDayOfMonth(dt: Date): Boolean {val calendar = Calendar.getInstance()calendar.time = dtcalendar.set(Calendar.DATE, (calendar.get(Calendar.DATE) + 1))return calendar.get(Calendar.DAY_OF_MONTH) == 1}

获取当前季度起始时间

/*** 获取当前季度起始时间*/fun getCurrentQuarterRangeDay(dt: Date): Pair<String, String> {val startDate = getCurrentQuarterStartDate(dt)val endDate = getCurrentQuarterEndDate(dt)return Pair(getDateStr(startDate), getDateStr(endDate))}// 获取当前季度开始时间private fun getCurrentQuarterStartDate(dt: Date): Date {val c = Calendar.getInstance()c.time = dtval currentMonth = c[Calendar.MONTH] + 1var date = dttry {if (currentMonth in 1..3) {c[Calendar.MONTH] = 0} else if (currentMonth in 4..6) {c[Calendar.MONTH] = 3} else if (currentMonth in 7..9) {c[Calendar.MONTH] = 6} else if (currentMonth in 10..12) {c[Calendar.MONTH] = 9}c[Calendar.DATE] = 1date = parseDate(getDateStr(c.time) + " 00:00:00")} catch (e: Exception) {logger.error(e.message, e)}return date}// 获取当前季度结束时间private fun getCurrentQuarterEndDate(dt: Date): Date {val c = Calendar.getInstance()c.time = dtval currentMonth = c[Calendar.MONTH] + 1var date = dttry {if (currentMonth in 1..3) {c[Calendar.MONTH] = 3c[Calendar.DATE] = 31} else if (currentMonth in 4..6) {c[Calendar.MONTH] = 6c[Calendar.DATE] = 30} else if (currentMonth in 7..9) {c[Calendar.MONTH] = 9c[Calendar.DATE] = 30} else if (currentMonth in 10..12) {c[Calendar.MONTH] = 12c[Calendar.DATE] = 31}c[Calendar.DATE] = 1date = parseDate(getDateStr(c.time) + " 23:59:59")} catch (e: Exception) {logger.error(e.message, e)}return getDateInterval(date, -1)}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。