HashMap and HashSet in Java | MyFavouriteClasses.java SortingAndSearching.java

Specifications

There will be a total of two classes within this program as follows:

MyFavouriteClasses Class

This class should:
  • Be instantiated by the other class only (not by the end user).
  • Have a method named “populate” that will result in the names of 4 java classes (each
  • from a different package) being stored in a HashSet. The user should be notified that this has happened.
  • Have a method named “getClasses” that will return a HashSet containing the above Strings.

Note: This should not be an “Abstract Class”

SortingAndSearching Class

This class is the only class that should be instantiated when testing the program. The “first”
class will be instantiated via this class. This class should:

  • Have a private method named “createMappings” that will:
    • Create a HashMap using the class names from the HashSet as “keys” and their corresponding package names as “values”. This can be done in a number of ways so try to be as efficient a possible when designing this method.
  • Have a constructor that will:
    • Call the populate method of the “MyFavouriteClasses” class.
    • Print the 6 class names from the HashSet to the terminal window.
    • Call the “createMappings” method.
  • Have a method named “search” that will:
    • Allow the user to insert one of the class names and will return its corresponding package in a readable format.
  • Have a method named “sort” that will:
    • Allow the user display only classes that begin with (or are higher in the alphabet than) a specific letter (char parameter) of their choice (from the HashSet). Remember to use “single quotes” to enter a char parameter.

Get Project Solution Now

Comments