java比较时间
伊谢尔伦
伊谢尔伦 2017-04-18 10:53:56
0
5
584

String date1 = “2017-04-06”;
String start = "2017-04";
String end = "2017-06";
java 计算data1是否在start和end之间。start和end即表示的是四月到六月

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

모든 응답(5)
PHPzhong

Java8을 사용하지 않는 경우:

으아아아
巴扎黑

이미 Java8에 대해 언급하신 분이 계시던데...이런 방식이 좀 어색하네요...기본적으로 다들 같은 생각이네요...

  1. 주어진 시작 시간을 당월 1일로 변경해야 합니다

  2. 제공되는 종료 시간을 당월 말일로 변경해야 합니다

어떻게 바꾸느냐가 관건인데... Java 8에는 호출할 수 있는 기성 API가 있는데... 파싱이 필요 없고... 첫날이 되어도 괜찮지만 많네요 문제부터 끝까지 심판...

주어진 조건에 따라 isBetween 메소드를 작성하면 다음과 같습니다

으아악

간단한 설명...
yyyy-mm에는 연도 및 월 형식을 처리하는 새로운 클래스가 있습니다. 이것은 YearMonth(TemporalAdjuster의 구현 클래스입니다)입니다. LocalDate의 구현 클래스인 Temporal의 메소드는 실제로 Temporal 인터페이스의 with 메소드입니다. 이는 Java 8의 새로운 time API 설계와 관련됩니다. with 메소드 서명은 다음과 같습니다. >

의미: 개체는 Temporal 개체 TemporalAdjuster에 따라 조정될 수 있습니다.

그래서 위에서 작성한 코드를 조합하면 아이디어는 다음과 같습니다

  1. 현재 시간을 임의로 찍어봤습니다

    LocalDate

  2. 전달된

    에 따라 A를 수정합니다(with 메소드 호출). 즉, 시간의 연도와 월을 조정하고 시간 B를 가져옵니다YearMonth

  3. 조정자

    (TemporalAdjuster)에 따라 B를 넣고, 요일을 조정하여 최종 시간을 얻는다TemporalAdjusters.firstDayOfMonth

실제로 흔히 사용되는 시간 조정이

에 요약되어 있습니다... 또한 간단하고 직관적이며 사용하기 쉬운 이 클래스를 주목해 보세요 TemporalAdjusters

마지막으로 이전에 간단하게 연결했던 Java 8 new time API 간의 관계를 제공합니다. 이러한 관계를 따라가면 특정 클래스와 관계를 살펴보면 new time API가 사용하기 쉬울 뿐만 아니라

左手右手慢动作

Java8을 사용하는 경우:

으아아아
小葫芦

Java8을 사용하지 않고 Joda-time을 사용하는 경우:

으아아아
洪涛
  1. end는 이번 달의 마지막 날로 변환되어야 합니다. 예를 들어 2017-06-30

  2. 형식이

    또는 yyyy-mm로 결정되면 yyyy-mm-dddate.compareTo(start) >= 0 && date.compareTo(end) < 0을 사용하세요.

  3. 등 비표준 형식이 있는 경우 표준 형식으로 변환하거나 Date 또는 long(Date는 기본적으로 긴 형식)으로 변환한 후 비교하세요.

    2017-4-6

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!