new project structure
- use objects and inheritance - enabled combined version for drinking and loading bar without impacting any of them
This commit is contained in:
28
zeitlaeufer/src/main/java/de/szimnau/tools/CommonTools.java
Normal file
28
zeitlaeufer/src/main/java/de/szimnau/tools/CommonTools.java
Normal file
@@ -0,0 +1,28 @@
|
||||
package de.szimnau.tools;
|
||||
|
||||
import java.lang.*;
|
||||
import java.math.BigDecimal;
|
||||
import java.math.MathContext;
|
||||
import java.math.RoundingMode;
|
||||
import java.util.*;
|
||||
|
||||
|
||||
public class CommonTools {
|
||||
|
||||
public static final int MINS_PER_HOUR = 60;
|
||||
public static final BigDecimal MINS_PER_HOUR_BD = BigDecimal.valueOf(MINS_PER_HOUR);
|
||||
public static final MathContext MC_INTEGER = new MathContext(1, RoundingMode.HALF_EVEN);
|
||||
|
||||
|
||||
private CommonTools() {}
|
||||
|
||||
|
||||
public static void print(Object o) {
|
||||
System.out.print(o);
|
||||
}
|
||||
|
||||
|
||||
public static void println(Object o) {
|
||||
System.out.println(o);
|
||||
}
|
||||
}
|
32
zeitlaeufer/src/main/java/de/szimnau/tools/FormatTools.java
Normal file
32
zeitlaeufer/src/main/java/de/szimnau/tools/FormatTools.java
Normal file
@@ -0,0 +1,32 @@
|
||||
package de.szimnau.tools;
|
||||
|
||||
import java.lang.*;
|
||||
import java.math.BigDecimal;
|
||||
import java.text.DecimalFormat;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.time.LocalTime;
|
||||
import java.util.*;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
|
||||
public class FormatTools {
|
||||
|
||||
public static final String TIME_FORMAT = "HH:mm";
|
||||
public static final DateTimeFormatter TIME_FORMATTER = DateTimeFormatter.ofPattern(TIME_FORMAT);
|
||||
public static final Pattern TIME_PATTERN = Pattern.compile("(?>[01]\\d|2[0-4]):[0-5]\\d");
|
||||
public static final DecimalFormat PERCENTAGE_FORMAT = new DecimalFormat("00.00");
|
||||
|
||||
|
||||
private FormatTools() {}
|
||||
|
||||
|
||||
public static String minutesToTimeString(long minutes) {
|
||||
return minutesToTimeString(BigDecimal.valueOf(minutes));
|
||||
}
|
||||
|
||||
|
||||
public static String minutesToTimeString(BigDecimal minutes) {
|
||||
BigDecimal[] hoursAndMinutes = minutes.divideAndRemainder(CommonTools.MINS_PER_HOUR_BD, CommonTools.MC_INTEGER);
|
||||
return LocalTime.of(hoursAndMinutes[0].intValue(), hoursAndMinutes[1].intValue()).format(TIME_FORMATTER);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user