java - 将字符串转换为 java.util.Stream<Character>

标签 java string java-8 java-stream

有时我想对字符串中的每个字符做一些简单的事情。不幸的是,因为字符串是不可变的,所以除了循环遍历字符串之外没有好的方法,这可能会非常冗长。如果您改用 Stream,则可以做得更短,只需一两行。

有没有办法转换 String进入Stream<Character>

最佳答案

您可以使用 chars() CharSequence 中提供的方法自 String类实现此接口(interface),您可以访问它。 chars()方法返回 IntStream , 所以你需要把它转换成 (char)如果您想转换 IntStreamStream<Character>

例如

public class Foo {

    public static void main(String[] args) {
        String x = "new";

        Stream<Character> characters = x.chars().mapToObj(i -> (char) i);
        characters.forEach(System.out::println);
    }
}

关于java - 将字符串转换为 java.util.Stream<Character>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32471799/

相关文章:

java - 生成 Mandelbrot 分形时如何设置 c 的值?

C不能打印一个字符串两次

java - 如何在java中查找和替换某些字符串模式

string - 想要一种使用 PowerShell 将不同字符串拆分为多个部分的通用方法

guava - 从java8流创建guava MultiMap的最干净方法

java 如何在世界地图上使用经度和纬度标记地点

java - Android - 打开 Activity 并等待结果,然后再继续调用类

java - 当我尝试git push heroku时出现错误

Java计算整数数组中每个元素的出现次数

Java 方法引用(将方法作为参数传递)