Java經常使用小筆記

1.對list集合進行分頁html

     //startIndex指的是開始的小標 從0開始,pageSize是每頁記錄數
int toIndex = new Integer(startIndex)+new Integer(pageSize) ;
List<ProjectWorkItemAssignmentVO> listPage = voList.subList(new Integer(startIndex),toIndex>voList.size() ? voList.size():toIndex);java

2.Collections對list集合按照指定屬性進行排序api

複製代碼
    //時間由新到舊進行排列 就是時間由大到小
Collections.sort(voList, new Comparator<ProjectWorkItemAssignmentVO>() {
/**ide

  • @param o1
  • @param o2
  • @return 返回負數表示:o1 大於o2,
  • 返回0 表示:o1和o2相等,
  • 返回正數表示:o1小於o2br/>*/
    @Override
    public int compare(ProjectWorkItemAssignmentVO o1, ProjectWorkItemAssignmentVO o2) {
    if(o1.getsTime().compareTo(o2.getsTime()) == 1){
    return -1;
    }code

    if(o1.getsTime().compareTo(o2.getsTime()) == 0){
                    return 0;
                }
                return 1;
            }
        });
        System.out.println("排序後voList---" + voList);

      //時間由舊到新進行排列 就是時間由小到大
Collections.sort(voList, new Comparator<ProjectWorkItemAssignmentVO>() {
/**htm

  • @param o1
  • @param o2
  • @return 返回正數表示:o1 大於o2,
  • 返回0 表示:o1和o2相等,
  • 返回負數表示:o1小於o2br/>*/
    @Override
    public int compare(ProjectWorkItemAssignmentVO o1, ProjectWorkItemAssignmentVO o2) {
    return o1.geteTime().compareTo(o2.geteTime());
    }
    });blog

        //完成度由低至高 升序
    Collections.sort(voList, new Comparator<ProjectWorkItemAssignmentVO>() {
    /**排序

  • 由低到高排序
  • @param o1
  • @param o2
  • @return 返回負數表示:o1 小於o2,
  • 返回0 表示:o1和o2相等,
  • 返回正數表示:o1大於o2br/>*/
    @Override
    public int compare(ProjectWorkItemAssignmentVO o1, ProjectWorkItemAssignmentVO o2) {
    if (o1.getCompletion() > o2.getCompletion()) {
    return 1;
    }
    if (o1.getCompletion() == o2.getCompletion()) {
    return 0;
    }
    return -1;
    }
    });
    複製代碼
      對於日常數字的排序,只須要比較大下返回對應的正數或者負數來決定按照什麼順序,對於時間日期,須要調用compareTo()方法作比較,具體能夠詳看對應的api源碼

3.java獲取指定字符串,一個字符串中有多個相同的字符串

複製代碼
//截取0到倒數第三個/位置之間的字符串,×××標註部分
String actionRecord = "2018-09-08 14:59:42[Start時間]||2018-09-08 15:40:48[Pause時間]||";
//獲取最後一個|的下標
int index = actionRecord.lastIndexOf("|");
//在0-index-1範圍內,查找最後一個匹配的的字符串的位置
index = actionRecord.lastIndexOf("|",index-1);
//在0-index-1範圍內,查找最後一個匹配的字符串的位置
index = actionRecord.lastIndexOf("|",index-1);
//截取二者之間的字符串
String temp = actionRecord.substring(0,index+1);
複製代碼
  參考鏈接: http://www.javashuo.com/article/p-hnpqfupb-hc.htmlget

4.判斷一個時間段是否與另外一個時間段重合

//判斷時間段time1~time2是否與時間段fromTime~toTime重合
if(time1 >= fromTime && time1 < toTime || fromTime >= time1 && fromTime < time2){
//重合
}

5.使用set對list集合去重

//利用set 對list去重複Set<SPCustomer> set = new HashSet<SPCustomer>(tempList);//使用去重複後的set 從新構建一個listList<SPCustomer> tempList2 = new ArrayList<SPCustomer>(set);

相關文章
相關標籤/搜索