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

  Goals of managing health information

Describe how you would explain the purpose and goals of managing health information to a new health care employee.

  Write a class called palatine

Write a class called palatine that converts an STL string into Pig Latin form. The rules for converting a string into Pig Latin are as follows.

  Explain the difference between throwing an exception and

question 1. what is the difference between throwing an exception and catching an exception?question 2. how does a

  Create menu-based programs using guis

You will learn how to create menu-based programs using GUIs. Please respond to all of the following prompts with 1-2 paragraphs of original content: Discuss GUI components, explain how to handle key and mouse events, and state how they relate to GU..

  Explain why the teller application can call the withdraw

Explain why the Teller application can call the withdraw and deposit methods using a SavingsAccount object reference, even though we did not define these methods

  Write a java program that demonstrates exception handling

For this project, you will write a Java program that demonstrates exception handling. Your program will accept from the user ten values and place those numbers in an array

  Write java program to display results in java applet

Write down the java program which displays following results in java applet. Permits the user to enter three numbers (use JOptionPane for this) and prints out average of those value on screen.

  Allows the user to enter a temperature and whether

Write a program that allows the user to enter a temperature and whether the temperature is stated in Celsius or Fahrenheit...or whethe

  Compute the total annual compensation of a salesperson

Write a Java application using NetBeans Integrated Development Environment (IDE) that calculates the total annual compensation of a salesperson. Consider the following factors: A salesperson will earn a fixed salary of $35,750

  Statements to create a collection of integers

Write Java statements to create a collection of integers, and to initialize each element of the collection to -1. Then, using a for each statement to print the value of each element.

  Create a circle class

create acircle class, which has one field, the radius. the class should contains two constructors: a no-argument constructor that set the radius to zero, and a constructor that takes a parameter to set the radius.

  Write a java code that calculates the product

Write a java code that calculates the product of the subsequent sequence of numbers using for/loop and do/while/loop

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