問題タブ [linkedhashset]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - LinkedHashMaps と LinkedHashSets の長所と短所は何ですか?
どちらかを選択することの主な利点と、その選択に伴う不利益を誰かが説明できますか?
java - HashMap での keySet() メソッドの使用
ボードで可能な状態を調べて HashMap に保存するメソッドがあります
}
キーのグループに興味があります。それらをすべて印刷するにはどうすればよいですか?
HashSet t = map.keySet()
コンパイラによって拒否されているだけでなく、
java - hibernate は LinkedHashSet の順序を保持しますか? もしそうなら、どのように?
hibernate は LinkedHashSet の順序を保持しますか? もしそうなら、どのように? これがデータベースのタイプに依存する場合は、PostgreSQL について知りたいです。
バックグラウンド:
私は LinkedHashSet の目的を知っています。これを尋ねている理由は、実行するいくつかの関数の名前を、いくつかの 'functionName' テーブルと多対多の関係を持つ 'logError' テーブルに記録しているためです。 . これらの関数を実行時と同じ順序に保つ必要があるため、最初に対応する「functionName」オブジェクトを見つけ、それらを LinkedHashSet (失敗した各関数の後) に配置してから、「logError」オブジェクトを永続化します。
データベースから「logError」オブジェクトを再度取得した場合、それはまだ注文されますか? もしそうなら、これが Hibernate によってどのように行われるのか興味がありました。
java - LinkedHashSet javadocのバグ?
多分私はうるさいですが、javadocにはLinkedHashSetの実装に関する次の情報があります。
この実装は、すべてのエントリを介して実行される二重リンクリストを維持するという点でHashSetとは異なります。
LinkedHashSetクラスに二重リンクリストが見つかりません。誰かが助けることができますか?
java - HashSet と LinkedHashSet の比較
それらの違いは何ですか?そんなこと知ってる
LinkedHashSet は、すべての要素にわたって二重にリンクされた List を維持する HashSet の順序付きバージョンです。反復順序が重要な場合は、HashSet の代わりにこのクラスを使用してください。HashSet を反復処理する場合、順序は予測できませんが、LinkedHashSet を使用すると、挿入された順序で要素を反復処理できます。
しかし、LinkedHashSet のソースコードには、HashSet の呼び出しコンストラクタしかありません。では、二重リンクされたリストと広告掲載順はどこにあるのでしょうか?
java - LinkedHashSet に保存する- 初心者
という警告が表示されますincompatible types. query.getResultList(); returns a List
が、メソッドに返してもらいたいのはLinkedHashSet
.
ここでa を使用している理由LinkedHashSet
は、重複した値が DB に入力されるのを避けるためです。最初にメソッドを呼び出し、listHotels()
既に値が含まれているかどうかを確認し、含まれていない場合は値を DB に保存します。
編集
これがレコードをDBに保存する方法です
java - hibernate: HQL order by が保持されるように Set 関連付けをマップする方法
OK、これは Hibernate の (別の) バグ/実装されていない機能のように見えます。
HQLSet
の句が尊重されるように関連付けをマッピングすることは可能ですか?"order by"
たとえば、 と の 2 つのエンティティがあるPageEntity
としQuestionEntity
ます。ページにはセットがあります。
次の HQL を機能させるにはどうすればよいですか。
私が望まないもの:
- Java でソートを使用するには (SQL には「順序付け」があるため、これを行う必要はありません!)。SortedSet、Comparatorsなどは論外
- を使用してリストとしてマップします
<list-index>
。これにより、すべての SQL クエリに "order by" が追加されますが、これは望ましくありません - 繰り返します
<set order-by="orderIndex">
が、これはすべてのクエリに適用されます。
デバッグ中、使用されている Set の実装org.hibernate.collection.PersistentSet
はSet
. ラップの実装Set
はHashSet
. Hibernate はLinkedHashSet
代わりに a を使用できるほど賢く、私の " order by
" HQL 句を尊重できると思います。
java - Java LinkedHashSet が含まれているオブジェクトを削除しないのはなぜですか?
と(スーパークラスで)LinkedHashSet
を実装するオブジェクトがありますが、その正確なオブジェクトをセットから削除しようとすると、remove メソッドが戻り、オブジェクトがセットに残ります。の実装は、そのオブジェクトのメソッドを呼び出すことになっていますか? そうではないからです。これはJavaのバグでしょうか?1.6.0_25 を実行しています。equals
hashCode
compareTo
set.remove(obj)
false
LinkedHashSet
equals()
java - LinkedHashSet: hashCode() と equals() は一致しますが、contains() は一致しません
次のことがどのように可能ですか。
私は何か間違ったことをしていますか?
明らかに、常に発生するとは限りません (単純なオブジェクトのセットを作成しても、それを再現することはできません)。しかし、私の場合、より複雑なクラスの引数を使用すると、常に発生します。
編集:ここで定義しない主な理由は、Eclipse で生成された 20 行と2 倍の長arg
さのかなり大きなクラスだからです。そして、それは関係ないと思います-2つのオブジェクトが等しい限り。hashCode
equals