Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中每月和每周将日期设置为特定日期_Java - Fatal编程技术网

在Java中每月和每周将日期设置为特定日期

在Java中每月和每周将日期设置为特定日期,java,Java,我在做一个项目,它直观地显示每个月和每个星期的统计数据,我不知道如何优雅地更新每个星期和每个月的日期 例如,我想显示这个月的数据。我必须用Java制作两个日期变量。第一个是2021年5月1日,第二个是今天。我不知道如何优雅地将第一个变量设置为1.x.xxxx,而不首先从当前日期生成一个字符串,然后剪切它,用它做一些数字运算,然后将其合并回1.5.2021 每周统计也是如此,我需要周一和周日的日期,例如今天是2021年5月10日星期一,结束日期是2021年5月17日 因此,我的想法是将当前日期转换

我在做一个项目,它直观地显示每个月和每个星期的统计数据,我不知道如何优雅地更新每个星期和每个月的日期

例如,我想显示这个月的数据。我必须用Java制作两个日期变量。第一个是2021年5月1日,第二个是今天。我不知道如何优雅地将第一个变量设置为1.x.xxxx,而不首先从当前日期生成一个字符串,然后剪切它,用它做一些数字运算,然后将其合并回1.5.2021

每周统计也是如此,我需要周一和周日的日期,例如今天是2021年5月10日星期一,结束日期是2021年5月17日


因此,我的想法是将当前日期转换为字符串格式,将其切片,将其转换为int,计算所需的日期并将其放回字符串(无需返回到datetype,因为它将用于查询)。

好吧,您一定要看看
java.time
包中的类

在您的情况下,当前日期可以是
LocalDate
实例,例如,具有以下行:

LocalDate.of(2021,5,1);
然后您可以使用
withDayOfMonth
方法获取一个新的
LocalDate
实例,该实例的月日设置为1:

LocalDate currentDate=LocalDate.now();
LocalDate firstOfMonth=currentDate.withDayOfMonth(1);

是的,我可以在月份部分使用它。我将检查java.time包,看是否可以做类似的事情来获取当前星期的星期一日期。@Kalybor好的,这可以通过一个,它能够根据某种逻辑将一些时间转换为另一个时间。helper类包含一组具有常用调整的方法,例如查找当前日期之前的星期一。类似于
currentDate.with(temporalAdjusts.previousorName(DayOfWeek.MONDAY)
的方法可以解决这个问题。如果你的一周总是从周一到周日(你不需要考虑一周可能从周日或一周中的其他某一天开始),那么只需
currentDate.with(DayOfWeek.MONDAY)即可
周日也一样。非常感谢,两个回复都是有效的。非常好。