0

ハッシュテーブルに存在するベクトル値を他のベクトルと比較したい.ベクトル値が同じ場合は何らかの操作を実行したい.そうでない場合は保存を実行する必要がある.しかし、両方のベクトル値が常に異なる.私はジェネリックを使用できない私は古いプロジェクトに取り組んでいるので。

Hashtable hCompareTable = rUtil.getEventForComparing(dateSel,e.getTimeZone(),listUserEvents);

Enumeration eventsCompareKey = hCompareTable.keys();

  while (eventsCompareKey.hasMoreElements()) {
        String compareKey = (String) eventsCompareKey.nextElement();
        Vector compareEventData = (Vector) hCompareTable.get(compareKey);

        if (compareKey.equals(dateSel)) {
               for (int i = 0; i < compareEventData.size(); i++) {
         EventData eCompare = (EventData) compareEventData.elementAt(i);
                       for (int j = 0; j < object.size(); j++) {
                                 EventData eveObject = (EventData) object.elementAt( j )
                                       if (eveObject.getSummary().equals(eCompare.getSummary())) {
                                             syso("equal")
                                        }
                                       else{
                                          //do something
                                       }

両方のベクトルのデータを比較する方法がわかりません。ベクトルには EventData Bean 値があります。

4

2 に答える 2

1

ベクターと常に比較している理由はlastElement何ですか?objectオブジェクトのサイズを繰り返し処理していますが、常にベクトルオブジェクトの最後の要素を使用しています。

それ以外の場合は、次のように変更する必要があります。

EventData eveObject = (EventData) object.elementAt( j ); // object.lastElement();
于 2012-05-07T11:26:25.950 に答える
0

EventData は Object.equals(Object) メソッドを適切にオーバーライドしますか?

于 2012-05-07T12:28:05.593 に答える