需求
今天在寫排序時,忘了是返回1,是正序,還是-1為正序。
或者說,正序或者降序我應該如何返回。
例子說明
Collections.sort(companyList, new Comparator<String>() { @Override public int compare(String o1, String o2) { if(o1.compareTo(o2) < 0 ){ return -1; }else if(o1.compareTo(o2) == 0){ return 0; }else{ return 1; } } });
說明:
我的記法:
順序其實主要是看-1,-1決定其是否要調整順序:
if(o1.compareTo(o2) < 0 ){ return ?; } //這里o1表示位於前面的字符,o2表示后面的字符 //上面的條件是,o1比o2小,這個時候,我們需要需要調整它們的順序 //如果你想升序,那么o1比o2小就是我想要的;所以返回-1,類比成false;表示我不想調整順序 //如果你想降序,那么o1比o2小不是我想要的;所以返回1,類比成true;表示我想調整順序
這里o1表示位於前面的字符,o2表示后面的字符
上面的條件是,o1比o2小,這個時候,我們需不需要調整它們的順序:
如果你想升序,那么o1比o2小就是我想要的;所以返回-1,類比成false;表示我不想調整順序
如果你想降序,那么o1比o2小不是我想要的;所以返回1,類比成true;表示我想調整順序