問題タブ [guava]
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 - Google コレクションからマルチセットの上位 N 個の要素を見つけますか?
Google Collections Multisetは、それぞれがカウントを持つ (つまり、複数回存在する可能性がある) 要素のセットです。
次のことを何回やりたいかわかりません
- ヒストグラムを作成する (正確には Multiset)
- ヒストグラムからカウントごとに上位 N 個の要素を取得する
例: 上位 10 個の URL (# 回言及)、上位 10 個のタグ (# 回適用)、...
Google Collections マルチセットを指定して #2 を行う標準的な方法は何ですか?
これについてのブログ投稿がありますが、そのコードは私が望むものではありません。まず、上位 N だけでなく、すべてを返します。次に、コピーします (コピーを避けることは可能ですか?)。第三に、私は通常、決定論的な並べ替え、つまりカウントが等しい場合のタイブレークが必要です。その他のニット: 静的ではないなど。
java - GoogleのMultimapのentries()メソッドがキーとコレクションのペアを返さないのはなぜですか?
メソッドから期待したcom.google.collections.Multimap<A, B>
aから取得できるようにしたいのですが、実際には。を返します。私がやりたいことをする方法はありますか?Collection<Entry<A, Collection<B>>>
entries()
Collection<Entry<A, B>>
現在、私は次のように繰り返しています:
そして、私はこのように繰り返すことができることを望みます:
java - マルチマップの作成方法地図から>?
そのようなマルチマップ構造は見つかりませんでした...これを実行したい場合は、マップを繰り返し処理して、マルチマップにデータを入力します。他の方法はありますか?
最初の結果はです{1=[[a, b, c, c]]}
が、私は期待しています{1=[a, b, c, c]}
guava - GuavaのIterables.find()がnullを返す代わりにNoSuchElementExceptionをスローするのはなぜですか?
私はGoogleGuavaが大好きで、それをよく使用していますが、私がいつも書いている方法が1つあります。
私にとって、これはIterables
(Iterators
そのことに関しても)非常に便利な追加であるように思われるので、なぜそれが欠落しているのか疑問に思います。NoSuchElementException
また、おそらくnullを見つけることと要素を見つけないことを区別するために、をスローするメソッドを持つことのポイントを理解できますが、その状況は、使用している述語が次の場合にのみ発生します。
これは一般的なケースではないようです。
では、なぜguavaの設計者は、それが見つからない場合にnullを返すのではなく、この動作を選択したのでしょうか。
これが[Iterables.find()][1]のjavadocです。
[1]: http: //google-collections.googlecode.com/svn/trunk/javadoc/com/google/common/collect/Iterables.html#find (java.lang.Iterable、com.google.common.base。述語)
java - Apache Commons Collections の ArrayIterator に相当する一般的なものはありますか?
ArrayIterator
便利ですが (機能は必要ありませんがreset
)、Commons Collections の残りの部分と同様に、ジェネリックを使用しません。Google Collectionsを確認しましたが、それに相当するものはありませんでした。私はそれを逃しましたか?そのようなものを提供する最初の 2 つと同様の評判と品質の別のライブラリはありますか? ありがとう。
java - リスト並べ替えパズル
私が持っていると仮定すると
このソートされていないリストをこれに変換するにはどうすればよいですか:
(最初に表示されなければならない既知の値 (ここでは「PREFA」と「PREFZ」) で始まり、残りはアルファベット順にソートされたリスト)
仕事をすることができるグアバにはいくつかの便利なクラスがあると思います(順序付け、述語...)が、まだ解決策を見つけていません...
java - シンプルなパターンでスプリッターが爆発する
Google コレクションの代わりに Guava を使い始めたところです。Splitter クラスはクールに見えました。しかし、私がそれを使用すると、次のようになります。
スタック ダンプを取得します。
javadoc には、この「com.google.common.base.Platform」について何もありません。そのため、何が問題なのかを推測するのは少し難しいです。
ご覧のとおり、パターンは非常にシンプルです。
java - そのようなメソッドエラーはありません: ImmutableList.copyOf()
私は、Sun の JDK 1.6 で Guava-05-snapshot を使用しています。このスニペットを実行すると、コードが爆発します。
特に ImmutableList.copyOf() 呼び出しで。このコードは、古い Google コレクション コードを使用して、何ヶ月も機能していました。
書き込み可能な配列の作成と並べ替えPassword.badWords
はImmutableSet<String>
完全に機能します。ImmutableList
しかし、配列を失敗に変換しようとします。
java - Google Guavaの前提条件*メソッドに提供する適切なエラーメッセージは何ですか?
たとえば、Preconditions.checkArgumentを使用する場合、エラーメッセージは、問題のチェックの合格例または不合格の場合を反映していると想定されていますか?
java - omitEmptyStringsは正しく機能しません
私は真ん中で立ち往生しています。
com.google.common.base.Splitterのラッパークラスを作成しています。
ただし、メソッドomitEmptyStringsは正しく機能しません。
どうか、私にあなたの素晴らしいガイダンスを与えてください。
これが[発信者]です
結果は次のとおりです。[foo]
[11]
[bar1]
[quux]
以下は私のラッパークラスです。