相关疑难解决方法(0)

通过项本身的属性索引集合的最简洁方法,该项本身就是一个集合

我有一个List<Foo>并且想要一个番石榴Multimap<String, Foo>,我们Foo按照它们的Collection<String> getTags()功能的每个标签对它们进行分组.

我正在使用java 8,所以lambdas和方法引用很好/鼓励.

例如,如果我有:

foo1, tags=a,b,c
foo2, tags=c,d
foo3, tags=a,c,e
Run Code Online (Sandbox Code Playgroud)

我会得到一个Multimap<String, Foo>:

a -> foo1, foo3
b -> foo1
c -> foo1, foo2, foo3
d -> foo2
e -> foo3
Run Code Online (Sandbox Code Playgroud)

java guava java-8 java-stream

12
推荐指数
2
解决办法
2952
查看次数

Java 8 Streams - 如何比较元素?

我想.txt使用 Java Stream在文件中查找字谜。这是我所拥有的:

try (InputStream is = new URL("http://wiki.puzzlers.org/pub/wordlists/unixdict.txt").openConnection().getInputStream();
     BufferedReader reader = new BufferedReader(new InputStreamReader(is));
     Stream<String> stream = reader.lines()) {
Run Code Online (Sandbox Code Playgroud)

以及字谜的方法:

public boolean isAnagram(String firstWord, String secondWord) {
    char[] word1 = firstWord.replaceAll("[\\s]", "").toCharArray();
    char[] word2 = secondWord.replaceAll("[\\s]", "").toCharArray();
    Arrays.sort(word1);
    Arrays.sort(word2);
    return Arrays.equals(word1, word2);
}
Run Code Online (Sandbox Code Playgroud)

如何使用 Java 8 Stream 检查 unixdict.txt 中的单词是否是字谜?有没有办法将一个词与流中的所有词进行比较?

java inputstream fileinputstream anagram java-stream

2
推荐指数
1
解决办法
355
查看次数