org.zkoss.zul
Class RowComparator

java.lang.Object
  extended by org.zkoss.zul.RowComparator
All Implemented Interfaces:
java.io.Serializable, java.util.Comparator<java.lang.Object>

public class RowComparator
extends java.lang.Object
implements java.util.Comparator<java.lang.Object>, java.io.Serializable

A comparator used to compare Row, if not live data, or the data themselves, if live data.

Since:
3.6.0
Author:
jumperchen
See Also:
Serialized Form

Constructor Summary
RowComparator()
          Compares with Label.getValue().
RowComparator(Column header, boolean ascending, boolean ignoreCase, boolean nullAsMax)
          Compares with the column.
RowComparator(int index)
          Compares with the column of the specified index.
RowComparator(int index, boolean ascending, boolean ignoreCase)
          Compares with the column of the specified index.
RowComparator(int index, boolean ascending, boolean ignoreCase, boolean nullAsMax)
          Compares with the column of the specified index.
 
Method Summary
 int compare(java.lang.Object o1, java.lang.Object o2)
           
 boolean equals(java.lang.Object o)
           
 Column getColumn()
          Returns the column that this comparator is associated with, or null if not available.
 int hashCode()
           
 boolean isAscending()
          Returns whether the order is ascending.
 boolean shallIgnoreCase()
          Returns whether to ignore case.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RowComparator

public RowComparator()
Compares with Label.getValue().

It assumes the value returned by the label indexing in AbstractComponent.getChildren().

Note: It assumes the ascending order and case-insensitive. If not, use RowComparator(int, boolean, boolean) instead.


RowComparator

public RowComparator(int index)
Compares with the column of the specified index.

0 for the first column, 1 for the second and so on

Note: -1 for Row.getValue() and it assumes the value implements Comparable.

Note: It assumes the ascending order, case-insensitive and comparing the returned values of Label.getValue(). If not, use RowComparator(int, boolean, boolean, boolean) instead.

A null value is considered as the minimum value.

Parameters:
index - which column to compare. If -1, Row.getValue() is used.

RowComparator

public RowComparator(int index,
                     boolean ascending,
                     boolean ignoreCase)
Compares with the column of the specified index.

0 for the first column, 1 for the second and so on

Note: -1 for Row.getValue() and it assumes the value implements Comparable.

A null value is considered as the minimum value.

Parameters:
index - which column to compare. If -1, Label.getValue() is used.
ascending - whether to sort as ascending (or descending).
ignoreCase - whether to sort case-insensitive

RowComparator

public RowComparator(int index,
                     boolean ascending,
                     boolean ignoreCase,
                     boolean nullAsMax)
Compares with the column of the specified index.

0 for the first column, 1 for the second and so on

Note: -1 for Row.getValue() and it assumes the value implements Comparable.

Parameters:
index - which column to compare. If -1, Row.getValue() is used.
ascending - whether to sort as ascending (or descending).
ignoreCase - whether to sort case-insensitive
nullAsMax - whether to consider null as the maximum value. If false, null is considered as the minimum value.

RowComparator

public RowComparator(Column header,
                     boolean ascending,
                     boolean ignoreCase,
                     boolean nullAsMax)
Compares with the column.

Parameters:
ascending - whether to sort as ascending (or descending).
ignoreCase - whether to sort case-insensitive
nullAsMax - whether to consider null as the maximum value. If false, null is considered as the minimum value.
Method Detail

getColumn

public Column getColumn()
Returns the column that this comparator is associated with, or null if not available.


isAscending

public boolean isAscending()
Returns whether the order is ascending.


shallIgnoreCase

public boolean shallIgnoreCase()
Returns whether to ignore case.


compare

public int compare(java.lang.Object o1,
                   java.lang.Object o2)
Specified by:
compare in interface java.util.Comparator<java.lang.Object>

equals

public boolean equals(java.lang.Object o)
Specified by:
equals in interface java.util.Comparator<java.lang.Object>
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object


Copyright © 2005-2011 Potix Corporation. All Rights Reserved. SourceForge.net Logo