質問

Lastyうを実装してハイブリッド構造のJavaあるということは、次のように記述されています。

public class MapOfSet<K, V extends HasKey<K>> implements Set<V>, Map<K, Set<V>>

がHasKeyは、以下のインターフェース:

public interface HasKey<K> {
    public K getKey();
}

残念ながら、紛争の間にmethos署名のセットインタフェースのMapインタフェースJava.私は最終的に選ばれたのはめ具のみのセットインタフェースおよび追加の方法地図せずにこのインタフェースを実装する

していると思いますぐに解決するのか

に応じてコメントを、ここが私の目標:

セット構造できる効率的アクセスのサブセット値の設定に対応して、与えられたキー値です。でいちばん最初にインスタンスを生成の地図セットにしてみましたが加わりの構造最適化します。

役に立ちましたか?

解決

あとだれかの追加の情報を操作する。かを作りたい設定を自動的に群の要素によるキーですよね?のある作業になりたいですか?どのように要素に追加されません。では要素の削除を取り除いてからグループ分けされます。私の提案するインターフェースのように:

public interface GroupedSet<K, V extends HasKey<K>> extends Set<V>{
    Set<V> havingKey(K k);
}

したい場合に利用できるように設定してい地図を追加できる別の方法

Map<K,Set<V>> asMap();

を使用しない複数のインタフェースの継承によります。

他のヒント

あけましておめでとうございましようと達成? Map 既に公開、そのキーとして Set を通じて[keySet()](http://java.sun.com/j2se/1.5.0/docs/api/java/util/Map.html#keySet()) 方法。したい場合には、信頼性のiteratior、あ LinkedHashMapTreeMap.

更新:いることを確保するための値によってのみ挿入され、一度ウンターまでお問合わせください一つの授業っては、前述のとおりに仕上がっていると思う SingleEntryMap とオーバーライドの実行 put(K key, V value) い独自性をチェック例外をスローする場合は、既に挿入されます。

更新:まこんな感じです。(いっエディタは開いたままにして、このあたりをコンパイル)

public final class KeyedSets<K, V> implements Map<K,Set<V>> {
    private final Map<K, Set<V>> internalMap = new TreeMap<K, Set<V>>;
    // delegate methods go here
    public Set<V> getSortedSuperset() {
        final Set<V> superset = new TreeSet<V>();
        for (final Map.Entry<K, V> entry : internalMap.entrySet()) {
            superset.addAll(entry.getValue());
        }
        return superset;
    }
}

というものなのであるガスクロマトグラフィによる地図、時として設定を実施する上で地図かと考えられる"なりすましのセットキーまたは値とのマッピングのキーと値です。そのことをまとめたものです。containsKey()。containsValue()メソッドを割り当てるべきなのです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top