作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我的jsp页面源代码:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.time.format.DateTimeFormatter"%>
<%@ page import="java.time.temporal.TemporalAdjusters"%>
<%@ page import="java.time.LocalDate"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Local Date Demo</title>
</head>
<body>
<%
int year=2018,month=12,date=1;
LocalDate theMonthShiftStartDate=LocalDate.of(year,month,date);
LocalDate theMonthShiftEndDate=theMonthShiftStartDate.with(TemporalAdjusters.lastDayOfMonth());
LocalDate previousMonthShiftStartDate=theMonthShiftStartDate.plusMonths(-1);
LocalDate previousMonthShiftEndDate=previousMonthShiftStartDate.with(TemporalAdjusters.lastDayOfMonth());
%>
theMonthShiftStartDate=<%=theMonthShiftStartDate.format(DateTimeFormatter.ofPattern("YYYY-MM-dd"))%><br>
theMonthShiftEndDate=<%=theMonthShiftEndDate.format(DateTimeFormatter.ofPattern("YYYY-MM-dd"))%><br>
previousMonthShiftStartDate=<%=previousMonthShiftStartDate.format(DateTimeFormatter.ofPattern("YYYY-MM-dd"))%><br>
previousMonthShiftEndDate=<%=previousMonthShiftEndDate.format(DateTimeFormatter.ofPattern("YYYY-MM-dd"))%><br>
</body>
</html>
为什么输出如下:
theMonthShiftStartDate=2018-12-01
theMonthShiftEndDate=2019-12-31
previousMonthShiftStartDate=2018-11-01
previousMonthShiftEndDate=2018-11-30
我预计“theMonthShiftEndDate”应该是 2018-12-31,但是,它返回 2019-12-31。
根据 Javadoc:
TemporalAdjusters.lastDayOfMonth()
返回“本月最后一天”调整器,该调整器返回设置为当月最后一天的新日期。
我今天运行jsp,为什么问题只出现在“12月”的localdate对象上,而不出现在11月份?
最佳答案
参见维基百科 week-dates .
<小时/>Examples:
Monday 29 December 2008 is written "2009-W01-1"
Sunday 3 January 2010 is written "2009-W53-7"
你写的
DateTimeFormatter.ofPattern("YYYY-MM-dd"))
使用模式 YYYY
,您将使用基于周的年份进行格式化。
将模式更改为 yyyy-MM-dd
,它使用year-of-era
DateTimeFormatter.ofPattern("yyyy-MM-dd"))
关于java - 关于 TemporalAdjusters.lastDayOfMonth() 的用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55472299/
这个问题已经有答案了: Cant parse recently formatted ZonedDateTime Java 8 (1 个回答) Java LocalDate Formatting of
使用 javascript 我在一个非常简单的问题上停下来,这个问题是关于如何使用 javascript 和 momentjs 获取每月的第一天和最后一天。我知道在 vb 中应该是这样的: Publ
我是一名优秀的程序员,十分优秀!