Generifying existing code.
For the second exercise, you start with a method that does not yet use generics. The method returns a copy of an array with two elements swapped.
There are a few directions in which you could take this method. Try out the following exercises. Don't forget to write tests!
You can reuse the class hierarchy from the previous exercise to write tests and experiment.
As a reminder again: don't forget that e.g.
List<String> is not a subclass of
String does inherit from
- The method for swapping elements in an array does not use generics, please change the method so it returns an array of the same type as provided. Hint: look at Arrays::copyOf
- Write a method that does the same thing, but for lists.
- As an extra, allow the results from (1) and (2) to return an array/list of a supertype of the type in the original array/list,
e.g. supply a
Integerand allow the result of the method to be assigned to a