Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ben’s Lecture Cliff Notes

Similar presentations


Presentation on theme: "Ben’s Lecture Cliff Notes"— Presentation transcript:

1 Ben’s Lecture Cliff Notes

2 Generic Functions I want to write generic functions, so I don’t have to rewrite them again. The problem is functions often depend on functionality provided by the parameters. How can I write a generic function, using generic parameters, yet those parameters are mandated to have certain functionality? Answer: Interfaces (a contract of functionality) Required methods, but the definition is up to the user.

3 A Generic Sort To write a generic sort, I need to be able to compare the objects I am asked to sort. Each object must have a function to compare itself with another object. Solution: The sort function accepts a collection of objects that implement the Comparable interface Comparable objects have a compareTo function. Now I can sort any collection so long as the objects implement this interface, using one sort function. Call compareTo for each object in the collection.

4 Problem The Comparable interface only provides one way to compare.
What if I need diverse mechanisms of comparison? (sort by size, shape, color, ….) How do I write a generic sort algorithm that can sort the objects by comparing any characteristic? Answer: Provide the sort a Comparator in addition to the collection

5 Comparator The Comparator interface contains one method, compare.
The sort function can then use any object that implements the Comparator interface to perform the comparisons desired, and then the sort can sort accordingly. Sort accepts the collection and the comparator.


Download ppt "Ben’s Lecture Cliff Notes"

Similar presentations


Ads by Google