logo Practice-It logo

BJP4 Self-Check 11.20: mapMystery2

Language/Type: Java Collection mystery Sets and Maps
Author: Allison Obourn (on 2016/09/08)

Write the output that is printed when the given method below is passed each of the following maps as its parameter. Assume that each parameter map stores its key/value pairs in exactly the order shown, and that is the order in which a for-each loop would examine them. Recall that maps print in a {key1=value1, key2=value2, ..., keyN=valueN} format. Your answer should display the right values in the right order.

public static void mapMystery2(Map<String, String> m) {
    Set<String> s = new TreeSet<String>();
    for (String key : m.keySet()) {
        if (!m.get(key).equals(key)) {
            s.add(m.get(key));
        } else {
            s.remove(m.get(key));
        }
    }
    System.out.println(s);
}
{sheep=wool, house=brick, cast=plaster, wool=wool}
{munchkin=blue, winkie=yellow, corn=yellow, grass=green, emerald=green}
{pumpkin=peach, corn=apple, apple=apple, pie=fruit, peach=peach}
{lab=ipl, lion=cat, terrier=dog, cat=cat, platypus=animal, nyan=cat}

You must log in before you can solve this problem.


Log In

If you do not understand how to solve a problem or why your solution doesn't work, please contact your TA or instructor.
If something seems wrong with the site (errors, slow performance, incorrect problems/tests, etc.), please

Is there a problem? Contact a site administrator.