文字列のベクトルを別のベクトルまたは配列と比較したい。ポイントは、何かに応じて、配列/ベクトルにいくつかの文字列を追加することです。次に、それを別のベクトル (これは既にベクトルであり、使用するメソッドはそのように返します) と比較し、共通要素をベクトルに保存します (ベクトルにするか、後でキャストすることができます)。
ベクトルを使用してそれを行うことができるかどうか、または比較を行うためにベクトルを別のタイプ (配列、リスト) に変換する必要があるかどうかはわかりません。何か案は?
次のようなことを試すことができます:
Vector commonItems = new Vector();
Iterator vector1 = (whateverThefirstvectoris).itr();
Iterator vector2 = (whateverThesecondvectoris).itr();
while(vector1.hasNext())
{
Object temp = new Object;
temp = vector1.next();
while(vector2.hasNext())
{
if(vector2.next().equals(temp))
{
commonItems.add(temp);
}
}
}
共通要素を引き出すには、Vector.retainAll()を使用できます
指定された Collection に含まれるこの Vector の要素のみを保持します。つまり、指定された Collection に含まれていないすべての要素をこの Vector から削除します。 このVectorが呼び出しの結果として変更された場合は true
v1.retainAll(v2) //v1 will contain common elements only after this
SideNote :.equals()
ボンネットの下で使用します