/* * Copyright 2007 Google Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package java.util; class Comparators { /* * This is a utility class that provides a default Comparator. This class * exists so Arrays and Collections can share the natural comparator without * having to know internals of each other. * * This class is package protected since it is not in the JRE. */ /** * Compares two Objects according to their <i>natural ordering</i>. * * @see java.lang.Comparable */ private static final Comparator<Object> NATURAL = new Comparator<Object>() { public int compare(Object o1, Object o2) { return ((Comparable<Object>) o1).compareTo(o2); } }; /** * Returns the natural Comparator. * <p> * Example: * * <pre>Comparator<String> compareString = Comparators.natural()</pre> * * @return the natural Comparator */ public static <T> Comparator<T> natural() { return (Comparator<T>) NATURAL; } }