?? tostringcomparator.java
字號:
/*
* PSwing Utilities -- Nifty Swing Widgets
* Copyright (C) 2002 Pallas Technology
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* Pallas Technology
* 1170 HOWELL MILL RD NW
* SUITE 306
* ATLANTA GEORGIA 30318
*
* PHONE 404.983.0623
* EMAIL info@pallastechnology.com
*
* www.pallastechnology.com
**************************************************************************
* $Archive: SwingTools$
* $FileName: ToStringComparator.java$
* $FileID: 5$
*
* Last change:
* $AuthorName: Rob MacGrogan$
* $Date: 1/28/03 8:05 PM$
* $VerID: 55$
* $Comment: Add GLPL text.$
**************************************************************************/
package com.pallas.swing.pcombobox;
import java.util.Comparator;
/**
* Title: $FileName: ToStringComparator.java$
* @version $VerNum: 2$
* @author $AuthorName: Rob MacGrogan$<br><br>
*
* $Description: Comparator that calls toString() method on
* objects to sort them.$<br>
* $KeyWordsOff: $<br><br>
*
* Comparator that calls <code>toString()</code> method on objects to
* sort them.
*/
public class ToStringComparator implements Comparator {
private boolean invert = false;
/**
* Sorts in alphabetical order if this constructor is used.
*/
public ToStringComparator(){
}
/**
* @param invert -- if <code>true</code>, sorts in reverse
* alphabetical order. If <code>false</code>, sorts
* in alphabetical order.
*/
public ToStringComparator(boolean invert){
this.invert = invert;
}
/**
* @see java.util.Comparator#compare(Object, Object)
*/
public int compare(Object o1, Object o2) {
int sort = 0;
String s1 = o1.toString();
String s2 = o2.toString();
if (firstStringSortsBeforeSecond(s1, s2, invert)){
sort = -1;
}
else if (s1.equals(s2)){
sort = 0;
}
else{
sort = 1;
}
return sort;
}
public static boolean firstStringSortsBeforeSecond(String sOne, String sTwo, boolean invert){
boolean bReturn = false;
try{
double dblOne = Double.parseDouble(sOne);
double dblTwo = Double.parseDouble(sTwo);
if ( dblOne <= dblTwo){
bReturn = true;
}
else {
bReturn = false;
}
}
catch (NumberFormatException ex){
int iComp = sOne.compareToIgnoreCase(sTwo);
if (iComp <= 0){
bReturn = true;
}
else {
bReturn = false;
}
}
if (invert){
bReturn = ! bReturn;
}
return bReturn;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -