Stream反转字符串
时间: 2024-09-05 17:04:58 浏览: 61
Stream反转字符串是Java 8引入的一种使用Stream API处理集合或数组的方法。在Java中,可以使用Stream API来创建流(Stream),并对流中的元素执行各种操作,包括反转字符串。字符串反转可以通过将字符串转换为字符数组,然后通过Stream API中的`mapToInt`方法映射为一个整数流,接着使用`sorted`方法进行逆序排序,最后使用`map`方法将其映射回字符,最后再将字符数组连接成字符串。下面是一个简单的示例:
```java
import java.util.stream.Collectors;
public class StringReverser {
public static String reverse(String input) {
return input.chars() // 将字符串转换为int类型的Stream
.mapToObj(i -> (char) i) // 将int类型的Stream映射回字符类型
.sorted((a, b) -> b - a) // 对字符进行逆序排序
.collect(Collectors.toList()) // 将Stream收集为List
.stream() // 将List转换回Stream
.map(Object::toString) // 将字符转换回字符串
.collect(Collectors.joining()); // 将Stream连接成字符串
}
public static void main(String[] args) {
String originalString = "Hello, World!";
String reversedString = reverse(originalString);
System.out.println("Original: " + originalString);
System.out.println("Reversed: " + reversedString);
}
}
```
以上示例展示了如何使用Stream API来反转一个字符串。首先,字符串被转换为一个字符的流,然后使用`sorted`方法对字符进行逆序排序,最终再将字符集合转换回一个字符串。
阅读全文