java冒泡排序使用stream
时间: 2023-07-10 21:39:30 浏览: 86
冒泡排序 java
Java 8引入了Stream API,可以使代码更加简洁和易读。可以使用Stream API来实现冒泡排序。
下面是使用Java 8 Stream API实现冒泡排序的代码:
```java
import java.util.Arrays;
public class BubbleSort {
public static void bubbleSort(int[] arr) {
int n = arr.length;
for (int i = 0; i < n - 1; i++) {
int finalI = i;
Arrays.stream(arr, 0, n - i - 1)
.filter(j -> arr[j] > arr[j + 1])
.forEach(j -> {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
});
}
}
public static void main(String[] args) {
int[] arr = {64, 34, 25, 12, 22, 11, 90};
bubbleSort(arr);
System.out.println("排序后的数组:");
Arrays.stream(arr).forEach(e -> System.out.print(e + " "));
}
}
```
上述代码中,使用Arrays.stream将数组转换为Stream,然后在内层循环中使用filter方法过滤出需要交换位置的元素,并使用forEach方法进行交换。
这种实现方式相比传统的冒泡排序更加简洁,但是由于Stream API的使用,可能会影响性能。因此,建议在实际开发中根据具体情况选择最适合的实现方式。
阅读全文