-1

I try to iterate over an EntrySet like this:

 for (Entry<A, List<B>> list : service.entrySet()) {
                if (list.getKey() == typ1) {
                    for (B current : list.getValue()) {                            
                      // do sth
                    }
                }
               
                } else {
                    PrintHelper.printOut("not implemented case"
                            + list.getKey());
                }
            }
       }

Even though I have that part if (list.getKey() == typ1) I still get the printed case not implemented case typ1.

Why is that the case? What am I doing wrong with the iteration/ the if case?

Amanda123
  • 25
  • 4

1 Answers1

1

The key of a Map (or map entry) is an object - you need to compare it with equals, not ==:

if (list.getKey().equals(typ1)) {
Mureinik
  • 297,002
  • 52
  • 306
  • 350