Example usage for org.jfree.data KeyedValueComparator KeyedValueComparator

List of usage examples for org.jfree.data KeyedValueComparator KeyedValueComparator

Introduction

In this page you can find the example usage for org.jfree.data KeyedValueComparator KeyedValueComparator.

Prototype

public KeyedValueComparator(KeyedValueComparatorType type, SortOrder order) 

Source Link

Document

Creates a new comparator.

Usage

From source file:org.jfree.data.DefaultKeyedValues.java

/**
 * Sorts the items in the list by key./* w ww.j  av a  2  s.co  m*/
 *
 * @param order  the sort order (<code>null</code> not permitted).
 */
public void sortByKeys(SortOrder order) {
    final int size = this.keys.size();
    final DefaultKeyedValue[] data = new DefaultKeyedValue[size];

    for (int i = 0; i < size; i++) {
        data[i] = new DefaultKeyedValue((Comparable) this.keys.get(i), (Number) this.values.get(i));
    }

    Comparator comparator = new KeyedValueComparator(KeyedValueComparatorType.BY_KEY, order);
    Arrays.sort(data, comparator);
    clear();

    for (int i = 0; i < data.length; i++) {
        final DefaultKeyedValue value = data[i];
        addValue(value.getKey(), value.getValue());
    }
}

From source file:org.jfree.data.DefaultKeyedValues.java

/**
 * Sorts the items in the list by value.  If the list contains
 * <code>null</code> values, they will sort to the end of the list,
 * irrespective of the sort order.//from  w w  w  . j a  v a 2  s  .co m
 *
 * @param order  the sort order (<code>null</code> not permitted).
 */
public void sortByValues(SortOrder order) {
    final int size = this.keys.size();
    final DefaultKeyedValue[] data = new DefaultKeyedValue[size];
    for (int i = 0; i < size; i++) {
        data[i] = new DefaultKeyedValue((Comparable) this.keys.get(i), (Number) this.values.get(i));
    }

    Comparator comparator = new KeyedValueComparator(KeyedValueComparatorType.BY_VALUE, order);
    Arrays.sort(data, comparator);

    clear();
    for (int i = 0; i < data.length; i++) {
        final DefaultKeyedValue value = data[i];
        addValue(value.getKey(), value.getValue());
    }
}