の任意の要素を部分的に一致した場合、私は私が探している何String
Javaのラムダ - リストの任意の文字列要素が別のリスト
A = {"apple", "mango", "pineapple", "banana", ... }
B = {"app", "framework",...}
の2つのリストをしました見つけることがこれです:Bのいずれかの要素がです少なくともAの任意の要素(例えば、B 'appの第1要素)と部分一致(substring/contains/startsWith
)は、少なくとも1つの要素「apple」と部分的に一致する。
StackOverflowの他の類似したトピックには、2つのリストはありません。
Javaラムダを使用してソリューションを表現するうまい方法はありますか?
検索ドメインで一般的な問題だと感じています。だから、もしこのトピックに関する何か助けや興味深い読書があれば、私は指針を受け取ってうれしいです。
最初のものは並列化です。リンゴのヒットはマンゴーのヒットには依存しません。それで何らかの暗記があります。リンゴのヒットはパイナップルにも良いです。この作品を私が答えとして投稿します。ラムダ/ストリームを使用する前に、通常のループが機能します。リストが10k +長であれば、ストリームとラムダについて考えてください – efekctive
@efekctive:なぜですか?ストリームはパフォーマンスだけでなく、コードを理解しやすくすることもできます。 –
最初に問題を解決した場合。私はたくさんの "ストリームは人生を楽にします、おっと、これは問題を解決しません。 – efekctive