+
+ /**
+ * @param inNumber number to format
+ * @return formatted number to one decimal place
+ */
+ public static String formatOneDp(double inNumber)
+ {
+ return FORMAT_ONE_DP.format(inNumber);
+ }
+
+ /**
+ * Format a number to a sensible precision
+ * @param inVal value to format
+ * @return formatted String using local format
+ */
+ public static String roundedNumber(double inVal)
+ {
+ // Set precision of formatter
+ int numDigits = 0;
+ if (inVal < 1.0)
+ numDigits = 3;
+ else if (inVal < 10.0)
+ numDigits = 2;
+ else if (inVal < 100.0)
+ numDigits = 1;
+ // set formatter
+ FORMAT_FLEX.setMaximumFractionDigits(numDigits);
+ FORMAT_FLEX.setMinimumFractionDigits(numDigits);
+ return FORMAT_FLEX.format(inVal);
+ }
+
+ /**
+ * Convert the given hour and minute values into a string H:MM
+ * @param inHour hour of day, 0-24
+ * @param inMinute minute, 0-59
+ * @return string, either H:MM or HH:MM
+ */
+ public static String makeTimeString(int inHour, int inMinute)
+ {
+ StringBuilder sb = new StringBuilder();
+ final int hour = (inHour >= 0 && inHour <= 24) ? inHour : 0;
+ sb.append(hour);
+
+ sb.append(':');
+
+ final int minute = (inMinute >= 0 && inMinute <= 59) ? inMinute : 0;
+ if (minute <= 9) {sb.append('0');}
+ sb.append(minute);
+ return sb.toString();
+ }