問題タブ [collectors]

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.

0 投票する
2 に答える
1878 参照

java - groupingBy とフィルタを 1 ステップで

がありStream<String>、が欲しいですMap<Integer, String>。私の分類子関数を呼び出しましょうgetKey(String)- それは高価になる可能性があります。場合によってはゼロが返されます。これは、文字列を破棄し、結果のマップに含めないことを意味します。

したがって、次のコードを使用できます。

これにより、最初に不要な文字列がゼロでキー付けされたマップに追加され、次にそれらが削除されます。それらの多くがあるかもしれません。そもそもそれらをマップに追加しないようにするエレガントな方法はありますか?

グループ化の前にフィルター ステップを追加したくありません。これは、決定/分類コードを 2 回実行することを意味するためです。

0 投票する
4 に答える
38356 参照

java - Java 8 コレクタの問題 タイプの不一致: リストから変換できません to List

i was having working code with earlier version of java 8 which i was using to get unique values from list but since i upgraded to JDK 66 its giving me an error

i was having working code with earlier version of java 8 which i was using to get unique values from list but since i upgraded to JDK 66 its giving me an error

Type mismatch: cannot convert from List<Object> to List<String>

Where res is resultset i am getting from database, not sure what is wrong any idea?


How to handle Recyclerview list item click event

I am working with recyclerview but I am trying to intent to next activity but there is not setonlistitem method can any one tell how to redirect to next activity on click of list item,following is my snippet code can any one help me with that

0 投票する
1 に答える
387 参照

java-8 - シーケンシャル コレクターを明示的に使用する方法

まず、順次 == !並列をアサートします

Java-8Streamインターフェースは、次の 2 つのcollectメソッドを提供します。

要素を順次収集 (または変更可能に削減) するコレクターが必要です (ユースケース: 複数のマップ (要素は再帰的にマップである可能性があります) マージ、関連する順序)。コンバイナは必要ありません (Collectors.ofメソッドもコンバイナを必要とします)。どういうわけかこれを明示的に行うより良い方法はありますか?

  • カスタマイズされたCollector?
  • ofコンバイナーのパラメーターなしの同様の方法?
  • ライブラリからの既存のアプローチ?

または、必ずしもシーケンシャル コレクターではなく、厳密に左から右へのコンバイナーを使用した並列アプローチです。

実際、正しいキーワードはFalling Collectorである必要があります。

0 投票する
2 に答える
24725 参照

java - TreeMapに変換するJava 8 Stream API toMap

私は持っている

私はそれらをに変換する必要があります

を使用して HashMap に変換する方法を知っています

しかし、次の TreeMap が必要です。

ユーザークラスの一部

ユーザーコンパレータ:

0 投票する
1 に答える
666 参照

java-8 - リストを変換できますか> 地図へ> Stream API の groupby を利用

List<Map<String, Object>>私はこのようなリストを持っています

groupBy メソッドsalesReportForSoldProperty.stream().collect(Collectors.groupingBy(tags -> tags.get("D")))で Stream API を使用すると、コレクションを取得できMap<Object, List<Map<String, Object>>>
ますが、このコレクションの JSON を作成しようとすると、このような Json を取得しています

を取得しているため、ここではすべての値が JSONArray ですMap<Object, List<Map<String, Object>>>。Stream API を使用してコレクションを取得する方法はありますか?Map<Object, Map<String, Object>>したがって、適切な JSON を取得できます (JSONArray 値なし)

0 投票する
1 に答える
3700 参照

java-8 - Java Stream API を使用して「-」を削除し、マップのキーの空白を削除する方法

私は地図を持っています

Map を JSON に変換すると、これが得られます

しかし、ここで問題があります。JSON キーに空白と「-」を入れたくないのです。では、JAVA Stream API で解決できますか?空白と「-」を除いたマップのキーが得られますか? 同様のキー「Sold Third Party」は「SoldThirdParty」である必要があります

0 投票する
1 に答える
691 参照

java-8 - Java Stream API でキーが重複している場合に Map の内部要素を追加する方法

List<Map<String, Object>>私はこのようなリストを持っています

このストリーム API メソッドを使用して、このリストをマップに変換しています

java.lang.IllegalStateException: Duplicate keyしかし、私のリストには重複したキーがあるため、例外がスローされます

重複キーの内部要素を追加したい、このような出力が欲しい

JavaストリームAPIを介して可能ですか?

0 投票する
1 に答える
891 参照

java - ラムダ パラメータの型を解決できません

だから私はカスタムコレクターを実装しようとしていますが、残念ながら私は非常に興味深い問題で立ち往生しています:

そのため、上記のコードでは、コンパイラは、型の elem オブジェクトのメソッドを解決できませんTripResultDTO

言うまでもなく、getOutboundメソッドは赤で強調表示され、解決できません。が単にではなくTripResultsDTOのインスタンスとして扱われているように見えるというインテリ感覚を見ると、それは非常に奇妙です。なぜそれが起こっているのか、何か考えがありますか。ObjectTripResultDTO

また、私がやっていることをより良い方法で行うためのアイデアも大歓迎です。

0 投票する
6 に答える
60010 参照

java - ストリームを使用して Java Map を変換およびフィルタリングする

変換およびフィルタリングしたい Java Map があります。簡単な例として、すべての値を整数に変換してから、奇数のエントリを削除するとします。

これは正しく、結果は次のとおりです。{a=1234, c=3456}

とはいえ、二度電話しないようにするにはどうしたらいいのだろうかと考えずにはいられません.entrySet().stream()

変換操作とフィルター操作の両方を実行 .collect()し、最後に 1 回だけ呼び出す方法はありますか?