Java HashMap.containsKey () не вызывает equals ()

У меня есть хэш-карта:

Map<LotWaferBean, File> hm = new HashMap<LotWaferBean, File>();

LotWaferBean lw = new LotWaferBean();
... //populate lw
if (!hm.containsKey((LotWaferBean) lw)) {
  hm.put(lw, triggerFiles[l]);
}

Код для LotWaferBean :

@Override
public boolean equals(Object o) {
        if (!(o instanceof LotWaferBean)) {
              return false;
        }
        if (((LotWaferBean) o).getLotId().equals(lotId)
                    && ((LotWaferBean) o).getWaferNo() == waferNo) {
              return true;
        }
        return false;
  }

В моей IDE я установил точки останова в equals () , но никогда не выполняется. Почему?

24
задан Will Sumekar 6 January 2011 в 04:34
поделиться