最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java中實(shí)現(xiàn)Comparator接口和用法實(shí)例(簡明易懂)

 更新時(shí)間:2015年05月19日 10:04:06   投稿:junjie  
這篇文章主要介紹了Java中實(shí)現(xiàn)Comparator接口和用法實(shí)例(簡明易懂),本文給出實(shí)現(xiàn)Comparator接口的實(shí)例和使用這個(gè)接口的代碼實(shí)例,需要的朋友可以參考下

在java中,如果要對集合對象或數(shù)組對象進(jìn)行排序,需要實(shí)現(xiàn)Comparator接口以達(dá)到我們想要的目標(biāo)。

接下來我們模擬下在集合對象中對日期屬性進(jìn)行排序

一、實(shí)體類Step

package com.ljq.entity;


/**
 * 運(yùn)號單流程
 * 
 * @author Administrator
 * 
 */
public class Step{
  /** 處理時(shí)間 */
  private String acceptTime = "";
  /** 快件所在地點(diǎn) */
  private String acceptAddress = "";

  public Step() {
    super();
  }

  public Step(String acceptTime, String acceptAddress) {
    super();
    this.acceptTime = acceptTime;
    this.acceptAddress = acceptAddress;
  }

  public String getAcceptTime() {
    return acceptTime;
  }

  public void setAcceptTime(String acceptTime) {
    this.acceptTime = acceptTime;
  }

  public String getAcceptAddress() {
    return acceptAddress;
  }

  public void setAcceptAddress(String acceptAddress) {
    this.acceptAddress = acceptAddress;
  }

}

二、實(shí)現(xiàn)Comparator接口

package com.ljq.entity;

import java.util.Comparator;
import java.util.Date;

import com.ljq.util.UtilTool;

/**
 * 對Step類進(jìn)行排序
 * 
 * @author Administrator
 *
 */
public class StepComparator implements Comparator<Step>{

  /**
   * 如果o1小于o2,返回一個(gè)負(fù)數(shù);如果o1大于o2,返回一個(gè)正數(shù);如果他們相等,則返回0;
   */
  @Override
  public int compare(Step o1, Step o2) {
    Date acceptTime1=UtilTool.strToDate(o1.getAcceptTime(), null);
    Date acceptTime2=UtilTool.strToDate(o2.getAcceptTime(), null);
    
    //對日期字段進(jìn)行升序,如果欲降序可采用before方法
    if(acceptTime1.after(acceptTime2)) return 1;
    return -1;
  }

}

三、測試

package junit;

import java.util.Collection;
import java.util.Collections;
import java.util.List;

import org.junit.Test;


public class StepComparatorTest {

  @Test
  public void sort() throws Exception{
    List<Step> steps=new ArrayList<Step>;
    //對集合對象進(jìn)行排序
     StepComparator comparator=new StepComparator();
    Collections.sort(steps, comparator);
    if(steps!=null&&steps.size()>0){
      for(Step step:steps){
        System.out.println(step.getAcceptAddress());
        System.out.println(step.getAcceptTime());
      }
    }

  }
}

相關(guān)文章

  • JVM?jstack實(shí)戰(zhàn)之死鎖問題詳解

    JVM?jstack實(shí)戰(zhàn)之死鎖問題詳解

    如果在生產(chǎn)環(huán)境發(fā)生了死鎖,我們將看到的是部署的程序沒有任何反應(yīng)了,這個(gè)時(shí)候我們可以借助?jstack進(jìn)行分析,下面我們實(shí)戰(zhàn)操作查找死鎖的原因
    2022-10-10
  • mybatis if標(biāo)簽判斷不生效的解決方法

    mybatis if標(biāo)簽判斷不生效的解決方法

    這篇文章主要介紹了mybatis if標(biāo)簽判斷不生效的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • jbuilder2006連接sqlserver2000的方法

    jbuilder2006連接sqlserver2000的方法

    xp jbuiler2006 連接SQL SERVER2000的問題
    2008-10-10
  • SpringBoot Maven 項(xiàng)目 pom 中的 plugin 插件用法小結(jié)

    SpringBoot Maven 項(xiàng)目 pom 中的 plugin&n

    本文詳細(xì)介紹了Spring Boot Maven項(xiàng)目打包成jar文件時(shí)使用的spring-boot-maven-plugin插件,深入探討了插件的配置元素,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2025-01-01
  • 最新評論

    吐鲁番市| 南雄市| 保靖县| 绥化市| 靖江市| 莆田市| 徐闻县| 昭觉县| 电白县| 昌图县| 抚顺县| 张家口市| 杭锦旗| 西乌珠穆沁旗| 湟源县| 北流市| 万年县| 井冈山市| 合阳县| 梅州市| 罗源县| 石阡县| 深圳市| 合阳县| 通化市| 建宁县| 太仓市| 耿马| 红原县| 泗洪县| 赤壁市| 清徐县| 洞头县| 凤冈县| 北宁市| 阜南县| 班戈县| 虹口区| 扶绥县| 东乌| 淮安市|