Extend the java defined hashmap class

Assignment Help JAVA Programming
Reference no: EM13919690

Exercise 1: Extending HashMap

Your goal is to extend the java defined HashMap class to add the ability to store multiple objects. To do this, you will edit MultiHashMap.java to both add new methods and override two methods from HashMap.

(1) You need to implement four new methods (see details in the MultiHashMap.javafile)
a) getAll(Object key)
b) putAll(Object key, Collection values)
c) contains(Object key, Object value)
d) remove(Object key, Object value)

(2) You need to override two methods in the HashMap class (means methods with the same signature and return type).
a) get
b) put

The external behavior of the get and put methods should be the same as in HashMap, but internally they should facilitate the ability to keep track of multiple associations. The only place where MultiHashMap should differ from HashMap externally is in its compliance with the MultiMap interface (it means that MultiHashMap should implementMultiMap).

(3) To test your implementation, compile and run the file MultiHashMapTest.java.

Read the description for each method you are supposed to implement (inside the source code of MultiHashMap.java) carefully before you start! Here is an additional example to show the expected effects of these methods:

(NOTE: the format *-*-* stands for a collection of objects. Choose an appropriate class to maintain this collection)

Suppose testObj is an object of the MultiHashMap class, and it contains no key-value pairs initially.

1) testObj.put("A", "red")
this method returns NULL and now testObj contains an entry: "A" "red"
2) testObj.put("A", "blue")
this method returns the string "red" and now testObj contains an entry: "A" "red"-"blue"
3) testObj.get("A")
this method returns the string "blue"
4) testObj.getAll("A")
this method returns "red"-"blue"
5) testObj.putAll("A", "green"-"black"-"grey")
now testObj contains an entry: "A" "red"-"blue"-"green"-"black"-"grey"
6) testObj.get("A")
this method returns the string "grey"
7) testObj.contains("A", "green")
this method returns TRUE
8) testObj.remove("A", "black")
this method returns TRUE and now testObj contains an entry: "A" "red"-"blue"-"green"-"grey"

HINT:

1) Multiple objects can be organized inside a SINGLE object which is a member of the java collection framework.

2) Iterator can NOT guarantee the order of the objects returned from a collection. Consider how to reserve the ordering of the objects associated with a key.

Exercise 2: Sorting made easy

The class java.util.Collections (do not confuse this with the interface java.util.Collection) provides many useful static methods for use with Collections, Lists, and Sets, such as sort, and binarySearch.

In this exercise, you will utilize the Collections.sort() method on a List of your own abstract data type. Normally, Collections.sort(List) takes as argument oneList of Comparable elements and modifies the List so that the elements are sorted. We wish to sort a collection RatNum objects, but RatNum does not implement theComparable interface, so we cannot use Collections.sort.

We could simply modify the RatNum.java code, but assume that option is not available (often you will not be able to decide to modify a code because other people depend on the current version). The alternative is to call Collections.sort (List, Comparator). The Comparator is a class you implement that only needs a single method, public static int compare (Object o1, Object o2), which returns a negative number if o1 > o2, 0 if o1 == o2, and a positive number if o1 < o2.

Now the Comparator defined inside RatNumSortingTest.java simply returns 0 for its compare() method, treating all RatNums as equal values in the sorting. So your task is to modify the compare() method of RatNumSortingTest.java so that it follows the appropriate specifications of a Comparator.

Submit your .java source code files for both parts of this assignment.

Reference no: EM13919690

Questions Cloud

What is the total of the manufacturing overhead costs : What is the total of the manufacturing overhead costs above? What was the total amount of the period costs listed above for the period?
Projects subsequent cash flows are critically dependent : Norris Production Company (NPC) is considering a project that has an up-front cost at t = 0 of $2,500. (All dollars in this problem are in thousands.) The project's subsequent cash flows are critically dependent on whether a competitor's product is a..
The ending balance of accounts receivable : The ending balance of Accounts Receivable was $2,400. During the period, Panoramic recognized $40,000 of revenue on account.
Exploring ancient mysteries : There have been many theories regarding how the pyramids at Giza were constructed. Most experts agree that they were constructed as burial monuments for pharaohs, but "how" these ancient people constructed monuments of such great size without mode..
Extend the java defined hashmap class : Your goal is to extend the java defined HashMap class to add the ability to store multiple objects. To do this, you will edit MultiHashMap.java to both add new methods and override two methods from HashMap.
Which of given solutions would be basic feasible solutions : Which of the preceding solutions would be basic feasible solutions for a linear program? Find the basic solution with x1 = 0. Find the basic solution with x2 = 0. Find the basic solution with x3 = 0.
Based on purchasing power parity : The U. S. experienced an inflation rate of 4 percent last year while Spain's inflation last year was 2 percent. Based on purchasing power parity, the euro will:
Considering project which will provide annual cash inflows : You are considering a project which will provide annual cash inflows of $5,200, $6,300, and $7,500 at the end of each year for the next three years, respectively. What is the present value of these cash flows, given a 8% discount rate?
What is long-term goal of international trade secretariats : What is the long-term goal of international trade secretariats (ITSs) and Which component of a typical expatriate compensation package compensates the expatriate for having to live in an unfamiliar country isolated from family and friends, deal wit..

Reviews

Write a Review

JAVA Programming Questions & Answers

  Recursive factorial program

Write a class Array that encapsulates an array and provides bounds-checked access. Create a recursive factorial program that prompts the user for an integer N and writes out a series of equations representing the calculation of N!.

  Hunt the wumpus game

Reprot on Hunt the Wumpus Game has Source Code listing, screen captures and UML design here and also, may include Javadoc source here.

  Create a gui interface

Create GUI Interface in java programing with these function: Sort by last name and print all employees info, Sort by job title and print all employees info, Sort by weekly salary and print all employees info, search by job title and print that emp..

  Plot pois on a graph

Write a JAVA program that would get the locations of all the POIs from the file and plot them on a map.

  Write a university grading system in java

University grading system maintains number of tables to store, retrieve and manipulate student marks. Write a JAVA program that would simulate a number of cars.

  Wolves and sheep: design a game

This project is designed a game in java. you choose whether you'd like to write a wolf or a sheep agent. Then, you are assigned to either a "sheep" or a "wolf" team.

  Build a graphical user interface for displaying the image

Build a graphical user interface for displaying the image groups (= cluster) in JMJRST. Design and implement using a Swing interface.

  Determine the day of the week for new year''s day

This assignment contains a java project. Project evaluates the day of the week for New Year's Day.

  Write a java windowed application

Write a Java windowed application to do online quiz on general knowledge and the application also displays the quiz result.

  Input pairs of natural numbers

Java program to input pairs of natural numbers.

  Create classes implement java interface

Interface that contains a generic type. Create two classes that implement this interface.

  Java class, array, link list , generic class

These 14 questions covers java class, Array, link list , generic class.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd