java編寫的測試用時函式
阿新 • • 發佈:2019-01-07
java編寫的測試用時函式
呼叫方法
long start_time=getCurrentNow();
//
wordCountMapReduce.main(new String[]{});
//
long end_time=getCurrentNow();
String msg=getRunTime(end_time-start_time);
System.out.println("用時:"+msg);
用時函式
//---------------------------------- public static long getCurrentNow() { return System.currentTimeMillis(); } public static String getRunTime(long runTime_ms) { long day_xs = 60 * 60 * 24; long hour_xs = 60 * 60; long min_xs = 60; // long seconds = runTime_ms/1000; //相差總秒數 long subs = seconds; //相差天數 long iDays = subs / day_xs; // //相差小時數 long day_ms = iDays * day_xs; long sy_ms = subs - day_ms; long iHours = sy_ms / hour_xs; //相差分鐘數 long hour_ms = iHours * hour_xs; long sy_min_ms = sy_ms - hour_ms; long iMin = sy_min_ms / min_xs; //相差秒數 long Min_ms = iMin * min_xs; long sy_second_ms = sy_min_ms - Min_ms; long iSeconds = sy_second_ms; // String msg = ""; if (iDays <= 0) { if (iHours <= 0) { if (iMin <= 0) { msg = iSeconds + "秒"; } else { msg = iMin + "分鐘" + iSeconds + "秒"; } } else { msg = iHours + "小時" + iMin + "分鐘"; } } else { msg = iDays + "天" + iHours + "小時" + iMin + "分鐘"; } // return msg; } //---------------------------------- //其它函式 public static String getUTF_8(String str) throws UnsupportedEncodingException { return new String(str.getBytes("ISO-8859-1"), "UTF-8"); } public static InetAddress getLocalHostLANAddress() { try { InetAddress candidateAddress = null; // 遍歷所有的網路介面 for (Enumeration ifaces = NetworkInterface.getNetworkInterfaces(); ifaces.hasMoreElements(); ) { NetworkInterface iface = (NetworkInterface) ifaces.nextElement(); // 在所有的介面下再遍歷IP for (Enumeration inetAddrs = iface.getInetAddresses(); inetAddrs.hasMoreElements(); ) { InetAddress inetAddr = (InetAddress) inetAddrs.nextElement(); if (!inetAddr.isLoopbackAddress()) {// 排除loopback型別地址 if (inetAddr.isSiteLocalAddress()) { // 如果是site-local地址,就是它了 return inetAddr; } else if (candidateAddress == null) { // site-local型別的地址未被發現,先記錄候選地址 candidateAddress = inetAddr; } } } } if (candidateAddress != null) { return candidateAddress; } // 如果沒有發現 non-loopback地址.只能用最次選的方案 InetAddress jdkSuppliedAddress = InetAddress.getLocalHost(); return jdkSuppliedAddress; } catch (Exception e) { e.printStackTrace(); } return null; }