// Zorah Fung, CSE 143 // Demonstrates behavior that requires classes to implement the Comparable interface. import java.util.*; public class CollectionsOrdering { public static void main(String[] args) { testStringOrdering(); testCatOrdering(); } // Builds a List of Strings and calls several methods that require Strings // to have a natural ordering. public static void testStringOrdering() { String[] tempNames = { "Tanvi", "Rasika", "Hunter", "Yun Jung", "Christine" }; List names = Arrays.asList(tempNames); System.out.println(names); Collections.sort(names); System.out.println(names); System.out.println(Collections.binarySearch(names, "Hunter")); } public static void testCatOrdering() { List cats = new ArrayList(); cats.add(new Cat("Grumpy", 0, 14.5)); cats.add(new Cat("Yuma", 9, 13)); cats.add(new Cat("Lukas", 6, 50.3)); cats.add(new Cat("Ganda", 3, 10)); cats.add(new Cat("Ryan", 5, 16.2)); cats.add(new Cat("Matt", 6, 20.0)); cats.add(new Cat("Michael", 8, 18.0)); cats.add(new Cat("Miri", 7, 12)); cats.add(new Cat("Ayaz", 7, 15.5)); cats.add(new Cat("Grumpy", 6, 20.0)); cats.add(new Cat("Sam", 4, 11.11)); System.out.println(cats); Collections.sort(cats); System.out.println(cats); System.out.println(Collections.binarySearch(cats, new Cat("Grumpy", 6, 20.0))); } }