public class ProgramTimer { //ç¨åºçå¼å§æ¶é´ private long startTime; //ç¨åºçç»ææ¶é´ private long endTime; public ProgramTimer () { this.startTime = 0; this.endTime = 0; } /** * å¼å§è®°å½ç¨åºè¿è¡æ¶é´ * * @param startTime Long Integer */ public void start () { this.startTime = System.currentTimeMillis(); } /** * è¿åç¨åºçè¿è¡æ¶é´ * * @return String */ public String runningTime () { this.endTime = System.currentTimeMillis(); return formatTime(endTime-startTime); } /** * 对æ åæ¶çè½¬æ¢ * * @param ms Long * @return ç¨åºæ»ç¨æ¶:X天Xå°æ¶XåXç§Xæ¯«ç§ */ public static String formatTime(Long ms) { Integer ss = 1000; Integer mi = ss * 60; Integer hh = mi * 60; Integer dd = hh * 24; Long day = ms / dd; Long hour = (ms - day * dd) / hh; Long minute = (ms - day * dd - hour * hh) / mi; Long second = (ms - day * dd - hour * hh - minute * mi) / ss; Long milliSecond = ms - day * dd - hour * hh - minute * mi - second * ss; StringBuffer sb = new StringBuffer(); sb.append("ç¨åºæ»ç¨æ¶ï¼"); if(day > 0) { sb.append(day+"天"); } if(hour > 0) { sb.append(hour+"å°æ¶"); } if(minute > 0) { sb.append(minute+"å"); } if(second > 0) { sb.append(second+"ç§"); } if(milliSecond > 0) { sb.append(milliSecond+"毫ç§"); } return sb.toString(); } }