`
samjavaeye
  • 浏览: 188100 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

构造人性化的运行耗时字符串

 
阅读更多

工具类

	/**
	 * 构造人性化的运行耗时字符串。<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));

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics