?? timerecord.java
字號:
import java.util.*;class TimeRecord implements Comparable { protected long seconds; protected String projectName; protected String alias; protected boolean billable; TimeRecord() { projectName = ""; seconds = 0L; billable = true; } TimeRecord(String name, String aka, long time, boolean isBillable) { projectName = name; alias = aka; seconds = time; billable = isBillable; } protected void setSeconds(String secs) { StringTokenizer timeWords = new StringTokenizer(secs, ":"); // If time format is 1:30 if(timeWords.countTokens() == 2) { seconds = Long.parseLong(timeWords.nextToken()) * 3600; seconds += Long.parseLong(timeWords.nextToken()) * 60; } // If time format is 90 else if(timeWords.countTokens() == 1) { seconds = Long.parseLong(timeWords.nextToken()) * 60; // Else we have the wrong format } else seconds = 0L; } public java.math.BigDecimal getHours(int minutes, int scale) { double percent = (double)minutes/(double)(60*60); long partialHours = seconds / minutes; long remainder = seconds % minutes; if(remainder >= minutes/2) partialHours++; java.math.BigDecimal result = new java.math.BigDecimal(partialHours * percent); return result.setScale(scale, java.math.BigDecimal.ROUND_HALF_EVEN); } public String toString() { long minutes = seconds / 60; long hours = minutes / 60; minutes -= hours * 60; if (minutes < 10) return ""+hours+":0"+minutes; else return ""+hours+":"+minutes; } public int compareTo(Comparable comp, String type) throws Exception { TimeRecord compTo = (TimeRecord)comp; if(type.equals("Time")) { return (int)(seconds-compTo.seconds); } else { boolean useAlias = ! ((alias == null) || alias.equals("")); boolean useAliasTo = ! ((compTo.alias == null) || compTo.alias.equals("")); boolean useProject = ! ((projectName == null) || projectName.equals("")); boolean useProjectTo = ! ((compTo.projectName == null) || compTo.projectName.equals("")); if(useAlias) { if(useAliasTo) return alias.compareToIgnoreCase(compTo.alias); else return alias.compareToIgnoreCase(compTo.projectName); } else { if(useAliasTo) return projectName.compareToIgnoreCase(compTo.alias); else return projectName.compareToIgnoreCase(compTo.projectName); } } }}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -