リストの並べ替えについて

以下は、Comparatorインターフェイスを実装するリストの並べ替えです。

インターフェイスのcompareメソッドを実装し、値を返す必要があります。

特定の戻り値の意味については、以下のコードコメントを参照してください。

private List<UsrWorkExperience> sortWorkExpList(List<UsrWorkExperience> list){
		Collections.sort(list, new Comparator<UsrWorkExperience>(){
			@Override
            public int compare(UsrWorkExperience w1, UsrWorkExperience w2) {
                /*
                 * 负数代表左值小于右值,排在前面
                 * 正数代表左值大于右值,排在后面
					0代表左值等于右值,排在上面
                 */
                if(w1.getEndTime().after(w2.getEndTime())){
                    return -1;
                } 
                if(w1.getEndTime().equals(w2.getEndTime())&&
                		w1.getStartTime().after(w2.getStartTime())){
                	return -1;
                }
                if(w1.getEndTime().equals(w2.getEndTime())&&
                		w1.getStartTime().equals(w2.getStartTime())&&
                		w1.getDateTime().after(w2.getDateTime())
                		){
                	return -1;
                }
                return 1;
            }
        });
		return list;
	}

 

おすすめ

転載: blog.csdn.net/H517604180/article/details/90680349