From b85427676fedd373e955f24627764b8e5a29c816 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期五, 01 三月 2024 17:10:28 +0800
Subject: [PATCH] 合并代码
---
cloud-server-course/src/main/java/com/dsh/course/util/LocalDateTimeUtils.java | 46 ++++++++++++++++++++++++++++++++++++----------
1 files changed, 36 insertions(+), 10 deletions(-)
diff --git a/cloud-server-course/src/main/java/com/dsh/course/util/LocalDateTimeUtils.java b/cloud-server-course/src/main/java/com/dsh/course/util/LocalDateTimeUtils.java
index 1a83e4d..480fb71 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/util/LocalDateTimeUtils.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/util/LocalDateTimeUtils.java
@@ -5,6 +5,8 @@
import java.time.Duration;
import java.time.LocalDate;
import java.time.LocalDateTime;
+import java.util.Calendar;
+import java.util.Date;
/**
* LocalDateTimeUtils
@@ -14,8 +16,8 @@
* @version V1.0
*/
public class LocalDateTimeUtils {
- private final static int[] dayArr = new int[] { 20, 19, 21, 20, 21, 22, 23, 23, 23, 24, 23, 22 };
- private final static String[] constellationArr = new String[] { "摩羯座", "水瓶座", "双鱼座", "白羊座", "金牛座", "双子座", "巨蟹座", "狮子座", "处女座", "天秤座", "天蝎座", "射手座", "摩羯座" };
+ private final static int[] dayArr = new int[]{20, 19, 21, 20, 21, 22, 23, 23, 23, 24, 23, 22};
+ private final static String[] constellationArr = new String[]{"摩羯座", "水瓶座", "双鱼座", "白羊座", "金牛座", "双子座", "巨蟹座", "狮子座", "处女座", "天秤座", "天蝎座", "射手座", "摩羯座"};
/**
@@ -32,16 +34,17 @@
/**
* 通过生日计算年龄
+ *
* @param birthDay 生日
* @return
* @throws ParseException
*/
public static int getAgeByBirth(LocalDate birthDay) throws ParseException {
int age = 0;
- //出生日期晚于当前时间,无法计算
- LocalDate now=LocalDate.now();
+ //出生日期晚于当前时间,无法计算
+ LocalDate now = LocalDate.now();
if (birthDay.isAfter(now)) {
- throw new IllegalArgumentException( "生日大于当前时间!");
+ throw new IllegalArgumentException("生日大于当前时间!");
}
//当前年份
int yearNow = now.getYear();
@@ -50,14 +53,14 @@
//当前日期
int dayOfMonthNow = now.getDayOfMonth();
- int yearBirth =birthDay.getYear();
+ int yearBirth = birthDay.getYear();
int monthBirth = birthDay.getMonthValue();
int dayOfMonthBirth = birthDay.getDayOfMonth();
//计算整岁数
age = yearNow - yearBirth;
if (monthNow <= monthBirth) {
if (monthNow == monthBirth) {
- if (dayOfMonthNow < dayOfMonthBirth){
+ if (dayOfMonthNow < dayOfMonthBirth) {
//当前日期在生日之前,年龄减一
age--;
}
@@ -74,20 +77,43 @@
*/
public static String getConstellation(LocalDate date) {
- Integer month=date.getMonthValue();
- Integer day=date.getDayOfMonth();
+ Integer month = date.getMonthValue();
+ Integer day = date.getDayOfMonth();
return day < dayArr[month - 1] ? constellationArr[month - 1] : constellationArr[month];
}
/**
* 获取当天的星期几
+ *
* @return
*/
- public static int getWeekStr(){
+ public static int getWeekStr() {
LocalDate today = LocalDate.now();
DayOfWeek dayOfWeek = today.getDayOfWeek();
return dayOfWeek.getValue();
}
+ /**
+ * 根据输入本周的周几,获取当天的时间
+ *
+ * @param dayOfWeekInput 周几
+ * @return
+ */
+ public static Date getDateOfWeekNum(int dayOfWeekInput) {
+ // 获取当前日期
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(new Date());
+
+ // 设置为本周的第一天(星期一)
+ calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
+
+ // 根据输入的星期几数值,计算出相应的偏移量
+ int dayOfWeekIndex = (dayOfWeekInput + 6) % 7;
+ calendar.add(Calendar.DAY_OF_WEEK, dayOfWeekIndex);
+
+ // 获取计算后的日期
+ return calendar.getTime();
+ }
+
}
--
Gitblit v1.7.1