2

セットを渡してJavaで新しいセットを作成するときに、新しいセットに加えられた変更によって元のセットも変更されます。新しいセットに加えられた変更が元のセットに影響を与えないように、セットを渡すにはどうすればよいですか。

4

3 に答える 3

6
Set newSet = new HashSet(oldSet);

これにより、古いセットのコピーが作成されます。この後に古いセットに加えられた変更は、新しいセットには影響しません。

于 2012-05-04T06:05:24.713 に答える
1

の実装によって異なりますが、そのコンストラクターが実装されているすべての既知の実装クラスであるSet APISetを確認すると、「新しいセットを構築する」と表示されます。

あなたはそれをチェックすることができます:

HashSet

指定されたコレクションの要素を含む新しいセットを作成します。

TreeSet

指定されたコレクションの要素を含む新しいツリーセットを構築します[...]

LinkedHashSet

指定されたコレクションと同じ要素を使用して、新しいリンクされたハッシュセットを構築します。

于 2012-05-04T06:14:14.783 に答える
0

これが私が探していたものです:

new HashSet<String>(Arrays.asList(new String[]{"one","two"}));
于 2015-03-26T13:21:29.170 に答える