From 2779473cc2e3d1ebc66049c4a2cf3f56b44c0eb8 Mon Sep 17 00:00:00 2001 From: Umesh Awasthi Date: Sun, 29 Apr 2018 09:28:02 -0700 Subject: [PATCH] Java Date calculation example --- Java/Java-date-calculation/pom.xml | 75 +++++++++++++++++++ .../src/main/java/com/javadevjournal/App.java | 18 +++++ .../Java/DateDifferenceExample.java | 25 +++++++ .../java8/Java8DateCalculation.java | 23 ++++++ .../test/java/com/javadevjournal/AppTest.java | 20 +++++ 5 files changed, 161 insertions(+) create mode 100644 Java/Java-date-calculation/pom.xml create mode 100644 Java/Java-date-calculation/src/main/java/com/javadevjournal/App.java create mode 100644 Java/Java-date-calculation/src/main/java/com/javadevjournal/Java/DateDifferenceExample.java create mode 100644 Java/Java-date-calculation/src/main/java/com/javadevjournal/java8/Java8DateCalculation.java create mode 100644 Java/Java-date-calculation/src/test/java/com/javadevjournal/AppTest.java diff --git a/Java/Java-date-calculation/pom.xml b/Java/Java-date-calculation/pom.xml new file mode 100644 index 0000000..b2f2c7b --- /dev/null +++ b/Java/Java-date-calculation/pom.xml @@ -0,0 +1,75 @@ + + + + 4.0.0 + + com.javadevjournal + java-date-calculation + 1.0-SNAPSHOT + + java-date-calculation + + http://www.example.com + + + UTF-8 + 1.7 + 1.7 + + + + + junit + junit + 4.11 + test + + + + + + + + maven-clean-plugin + 3.0.0 + + + + maven-resources-plugin + 3.0.2 + + + maven-compiler-plugin + 3.7.0 + + + maven-surefire-plugin + 2.20.1 + + + maven-jar-plugin + 3.0.2 + + + maven-install-plugin + 2.5.2 + + + maven-deploy-plugin + 2.8.2 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 8 + 8 + + + + + diff --git a/Java/Java-date-calculation/src/main/java/com/javadevjournal/App.java b/Java/Java-date-calculation/src/main/java/com/javadevjournal/App.java new file mode 100644 index 0000000..28f8d48 --- /dev/null +++ b/Java/Java-date-calculation/src/main/java/com/javadevjournal/App.java @@ -0,0 +1,18 @@ +package com.javadevjournal; + +import com.javadevjournal.Java.DateDifferenceExample; +import com.javadevjournal.java8.Java8DateCalculation; + +import java.text.ParseException; + +/** + * Hello world! + * + */ +public class App +{ + public static void main( String[] args ) throws ParseException { + Java8DateCalculation dateDifferenceExample = new Java8DateCalculation(); + dateDifferenceExample.calculate_difference_between_dates(); + } +} diff --git a/Java/Java-date-calculation/src/main/java/com/javadevjournal/Java/DateDifferenceExample.java b/Java/Java-date-calculation/src/main/java/com/javadevjournal/Java/DateDifferenceExample.java new file mode 100644 index 0000000..e26db14 --- /dev/null +++ b/Java/Java-date-calculation/src/main/java/com/javadevjournal/Java/DateDifferenceExample.java @@ -0,0 +1,25 @@ +package com.javadevjournal.Java; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Locale; + +public class DateDifferenceExample { + + public void calculate_difference_between_dates() throws ParseException { + String currentDate= "10/24/2017"; + String finalDate= "10/28/2017"; + + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MM/dd/yyyy", Locale.ENGLISH); + Date firstDate = simpleDateFormat.parse("06/24/2017"); + Date secondDate = simpleDateFormat.parse("06/30/2017"); + + long difference = Math.abs(firstDate.getTime() - secondDate.getTime()); + long differenceDates = difference / (24 * 60 * 60 * 1000); + + //Convert long to String + String dayDifference = Long.toString(differenceDates); + System.out.println("Day Differnec is " + dayDifference); + } +} diff --git a/Java/Java-date-calculation/src/main/java/com/javadevjournal/java8/Java8DateCalculation.java b/Java/Java-date-calculation/src/main/java/com/javadevjournal/java8/Java8DateCalculation.java new file mode 100644 index 0000000..7a03561 --- /dev/null +++ b/Java/Java-date-calculation/src/main/java/com/javadevjournal/java8/Java8DateCalculation.java @@ -0,0 +1,23 @@ +package com.javadevjournal.java8; + +import java.time.Duration; +import java.time.LocalDate; +import java.time.temporal.ChronoUnit; + +public class Java8DateCalculation { + + public void calculate_difference_between_dates(){ + + //Use LocalDate and ChronoUnit + LocalDate firstDate = LocalDate.of(2017, 5, 6); + LocalDate currentDate = LocalDate.now(); + + long days = ChronoUnit.DAYS.between(firstDate, currentDate); + System.out.println(days); + + //date calculation + LocalDate now = LocalDate.now(); + LocalDate tenDaysAhead = now.plusDays(10); + System.out.println(tenDaysAhead.toString()); + } +} diff --git a/Java/Java-date-calculation/src/test/java/com/javadevjournal/AppTest.java b/Java/Java-date-calculation/src/test/java/com/javadevjournal/AppTest.java new file mode 100644 index 0000000..0a2788a --- /dev/null +++ b/Java/Java-date-calculation/src/test/java/com/javadevjournal/AppTest.java @@ -0,0 +1,20 @@ +package com.javadevjournal; + +import static org.junit.Assert.assertTrue; + +import org.junit.Test; + +/** + * Unit test for simple App. + */ +public class AppTest +{ + /** + * Rigorous Test :-) + */ + @Test + public void shouldAnswerWithTrue() + { + assertTrue( true ); + } +}