org.apache.commons.io.comparator
public class SizeFileComparator extends Object implements Comparator, Serializable
This comparator can be used to sort lists or arrays of files by their length/size.
Example of sorting a list of files using the SIZE_COMPARATOR singleton instance:
List<File> list = ... Collections.sort(list, LengthFileComparator.LENGTH_COMPARATOR);
Example of doing a reverse sort of an array of files using the SIZE_REVERSE singleton instance:
File[] array = ... Arrays.sort(array, LengthFileComparator.LENGTH_REVERSE);
N.B. Directories are treated as zero size unless
sumDirectoryContents
is true
.
Since: Commons IO 1.4
Version: $Revision: 609243 $ $Date: 2008-01-06 00:30:42 +0000 (Sun, 06 Jan 2008) $
Field Summary | |
---|---|
boolean | sumDirectoryContents Whether the sum of the directory's contents should be calculated. |
static Comparator | SIZE_COMPARATOR Size comparator instance - directories are treated as zero size |
static Comparator | SIZE_REVERSE Reverse size comparator instance - directories are treated as zero size |
static Comparator | SIZE_SUMDIR_COMPARATOR
Size comparator instance which sums the size of a directory's contents
using |
static Comparator | SIZE_SUMDIR_REVERSE
Reverse size comparator instance which sums the size of a directory's contents
using |
Constructor Summary | |
---|---|
SizeFileComparator()
Construct a file size comparator instance (directories treated as zero size). | |
SizeFileComparator(boolean sumDirectoryContents)
Construct a file size comparator instance specifying whether the size of
the directory contents should be aggregated.
|
Method Summary | |
---|---|
int | compare(Object obj1, Object obj2)
Compare the length of two files.
|
If the sumDirectoryContents
is true
The size of
directories is calculated using sizeOfDirectory.
Parameters: sumDirectoryContents true
if the sum of the directoryies contents
should be calculated, otherwise false
if directories should be treated
as size zero (see sizeOfDirectory).
Parameters: obj1 The first file to compare obj2 The second file to compare
Returns: a negative value if the first file's length is less than the second, zero if the lengths are the same and a positive value if the first files length is greater than the second file.