From ea0d03590d59ab0aee825ebc9e364156c0e0f473 Mon Sep 17 00:00:00 2001 From: Brandon Rodriguez <brodriguez8774@gmail.com> Date: Wed, 20 Sep 2017 00:06:12 -0400 Subject: [PATCH] Setup basic time comparison class for use in future assignments --- a0/src/com/CS3310/a0/ComputeTime.java | 75 +++++++++++++++++++++++++++ a0/src/com/CS3310/a0/Main.java | 67 ++++++++++++++++++++++++ 2 files changed, 142 insertions(+) create mode 100644 a0/src/com/CS3310/a0/ComputeTime.java diff --git a/a0/src/com/CS3310/a0/ComputeTime.java b/a0/src/com/CS3310/a0/ComputeTime.java new file mode 100644 index 0000000..a9cb32c --- /dev/null +++ b/a0/src/com/CS3310/a0/ComputeTime.java @@ -0,0 +1,75 @@ +package com.CS3310.a0; + + +import java.util.Date; + + +public class ComputeTime { + + //region Variables + + private long startMilliseconds; + private long endMilliseconds; + private long differenceMilliseconds; + + //endregion Variables + + + + //region Constructor + + /** + * Base constructor. + */ + public ComputeTime() { + + } + + //endregion Constructor + + + + //region Methods + + /** + * Determines the difference in milliseconds between two times. + * @param time1 + * @param time2 + * @return Long of Milisecond difference. + * Positive means time1 is earlier than time2. + * Zero means they're equal. + * Negative means time2 is earlier than time1. + */ + public long ComputeDateDifference(Date time1, Date time2) { + startMilliseconds = time1.getTime(); + endMilliseconds = time2.getTime(); + differenceMilliseconds = endMilliseconds - startMilliseconds; + PrintTime(differenceMilliseconds); + return differenceMilliseconds; + } + + + /** + * Calculates hours, minutes, seconds, and milliseconds based upon total milliseconds. + * Prints to stdout. + * @param timeInMilliseconds + */ + public void PrintTime(long timeInMilliseconds) { + long miliseconds; + long seconds; + long minutes; + long hours; + + miliseconds = timeInMilliseconds % 1000; + seconds = timeInMilliseconds / 1000; + minutes = seconds / 60; + seconds = seconds % 60; + hours = minutes / 60; + minutes = minutes % 60; + + System.out.println("H:M:S:m " + + hours + ":" + minutes + ":" + seconds + ":" + miliseconds); + } + + //endregion Methods +} diff --git a/a0/src/com/CS3310/a0/Main.java b/a0/src/com/CS3310/a0/Main.java index ffc90d0..431be65 100644 --- a/a0/src/com/CS3310/a0/Main.java +++ b/a0/src/com/CS3310/a0/Main.java @@ -1,7 +1,74 @@ package com.CS3310.a0; + +import java.util.Calendar; +import java.util.Date; + + public class Main { public static void main(String[] args) { System.out.println("Hello, World!"); + ComputeTime computeTime = new ComputeTime(); + + Date date1 = new Date(); + Date date2; + Calendar calendar = Calendar.getInstance(); + + // Day Difference. + calendar.setTime(date1); + calendar.add(Calendar.DAY_OF_MONTH, 1); + date2 = calendar.getTime(); + + System.out.println("Now Vs Tomorrow"); + computeTime.ComputeDateDifference(date1, date2); + + + // Hour difference. + calendar.setTime(date1); + calendar.add(Calendar.HOUR, -1); + date2 = calendar.getTime(); + + System.out.println("Now Vs Hour Ago"); + computeTime.ComputeDateDifference(date1, date2); + + + // Minute difference. + calendar.setTime(date1); + calendar.add(Calendar.MINUTE, 1); + date2 = calendar.getTime(); + + System.out.println("Now Vs Minute Ago"); + computeTime.ComputeDateDifference(date1, date2); + + + // Second difference. + calendar.setTime(date1); + calendar.add(Calendar.SECOND, 1); + date2 = calendar.getTime(); + + System.out.println("Now Vs Millisecond Ago"); + computeTime.ComputeDateDifference(date1, date2); + + + // Minute difference. + calendar.setTime(date1); + calendar.add(Calendar.MILLISECOND, 1); + date2 = calendar.getTime(); + + System.out.println("Now Vs Millisecond Ago"); + computeTime.ComputeDateDifference(date1, date2); + + + // Variable difference. + calendar.setTime(date1); + calendar.add(Calendar.DAY_OF_MONTH, 1); + calendar.add(Calendar.HOUR, 1); + calendar.add(Calendar.MINUTE, 1); + calendar.add(Calendar.SECOND, 1); + calendar.add(Calendar.MILLISECOND, 1); + date2 = calendar.getTime(); + + System.out.println("Now Vs All Above"); + computeTime.ComputeDateDifference(date1, date2); } } -- GitLab