构造人性化的运行耗时字符串
工具类
/** * 构造人性化的运行耗时字符串。<br/> * 最大时间单位为“天”,最小时间单位为“毫秒”。 * * @param startAt * 开始时间点 * @return 从startAt至今所消耗的时间,格式为“x天x小时x分钟x秒x毫秒” */public static String getRunTimeCost(long startAt) {long now = System.currentTimeMillis();long cost = now - startAt;StringBuilder sb = new StringBuilder();if (cost > DAY) {sb.append(cost / DAY + "天");cost = cost % DAY;}if (cost > HOUR) {sb.append(cost / HOUR + "小时");cost = cost % HOUR;}if (cost > MINUTE) {sb.append(cost / MINUTE + "分钟");cost = cost % MINUTE;}if (cost > SECOND) {sb.append(cost / SECOND + "秒");cost = cost % SECOND;}if (cost > 0)sb.append(cost + "毫秒");return sb.toString();}private static final long DAY = 1000 * 60 * 60 * 24;private static final long HOUR = 1000 * 60 * 60;private static final long MINUTE = 1000 * 60;private static final long SECOND = 1000;
?
?调用示例?
long startAt = System.currentTimeMillis();Random random = new Random();long sleepMillis = random.nextInt((int) (MINUTE * 3));Thread.sleep(sleepMillis);System.out.println(getRunTimeCost(startAt));
?
?