因此,我有一个包含自动生成的符号的单词列表。例如:hqst。我将此单词的每个符号转换为unicode并将其连接起来,除以点.,如下所示:104.113.115.116

我写下一个lambda:

.map(word -> {
    char[] symbols = word.toCharArray();
    StringBuilder newWord = new StringBuilder();

    for (int i = 0; i < symbols.length; i++) {
        newWord.append((int) symbols[i]).append(".");
        if (i == symbols.length - 1) {
            newWord = new StringBuilder(newWord.substring(0, i));
        }
    }
    return newWord.toString();
})

是否可以使用流API重写此匿名方法?

最佳答案

是的您可以使用 String::chars 从单词中获取 IntStream ,然后将每个int映射到String并使用joining collector进行收集:

.map(word -> word.chars()
                 .mapToObj(Integer::toString)
                 .collect(Collectors.joining("."))
)

07-26 04:11