美文网首页工作生活
新特性8-并行数组排序

新特性8-并行数组排序

作者: 三秋十里 | 来源:发表于2019-07-04 15:46 被阅读0次

Stream都有两种模式:

顺序执行和并行执行。比如:
List <Person> people = list.getStream.collect(Collectors.toList());

并行执行为:
List <Person> people = list.getStream.parallel().collect(Collectors.toList());

在Java 7中已经有了Arrays.sort()方法可对对象进行排序,而在Java 8中,引入了新的并行排序,它比前者的排序速度更快,且遵循了Java 7引入的Fork/Join框架,可以把排序任务分配给线程池中可用的多个线程。 Java 8在java.util.Arrays类中新增了并行排序功能,能够更充分地利用多线程机制,最重要的方法是parallelSort(),可以显著加快多核机器上的数组排序。

package com.ehking.example.java8.newfeature.demo08;

import java.util.Arrays;
import java.util.concurrent.ThreadLocalRandom;

/**
 * Created by shiyanwu on 2017/4/17.
 * 这段代码使用parallelSetAll()方法生成20000个随机数,
 * 然后使用parallelSort()方法进行排序。这个程序会输出乱序数组和排序数组的前10个元素。
 */
public class Java8ParallelArrays {

    public static void main(String[] args) {

        long[] arrayOfLong = new long[20000];

        Arrays.parallelSetAll(arrayOfLong,
                index -> ThreadLocalRandom.current().nextInt(1000000));
        Arrays.stream(arrayOfLong).limit(10).forEach(
                i -> System.out.print(i + " "));
        System.out.println();

        Arrays.parallelSort(arrayOfLong);
        Arrays.stream(arrayOfLong).limit(10).forEach(
                i -> System.out.print(i + " "));
        System.out.println();
    }
}

相关文章

  • 新特性8-并行数组排序

    Stream都有两种模式: 顺序执行和并行执行。比如:List people = list.getStream...

  • 2019-07-26

    优化器新特性 优化器具有一些新特性,主要是重新排序join和自动mapjoin。 (1)重新排序join (2)自...

  • LeetCode 21. Merge Two Sorted Li

    题目 将两个排序链表合并为一个新的排序链表 样例给出 1->3->8->11->15->null,2->null,...

  • 165. 合并两个排序链表

    将两个排序链表合并为一个新的排序链表.样例给出 1->3->8->11->15->null,2->null, 返回...

  • 二分查找和跳表

    我们常见的排序和搜索算法,基本都是基于数组的,因为数组有良好的随机访问特性,基于这个特性,能够设计许多性能良好的算...

  • Java8流式操作笔记

    java8的新特性,非新数据结构, 源可以是集合或数组,可以对源过滤、排序、映射等(每一步返回的都是流对象),最后...

  • ALG----插入排序法

    插入排序法的思想就是开始准备一个空数组,将要排序的数组遍历取出数组中的值按照大小插入到新数组的指定位置,当排序数组...

  • js 数组快速去重

    通过set 数组新特性去重

  • iOS 奇技淫巧总结

    数组去重 利用 NSSet 的特性,NSSet 是无序、没有重复元素的数组,如果需要排序,可以考虑用 NSSort...

  • 计数排序

    排序简介 找出数组的最大值和最小值,创建新数组[max+1], 原数组值等于新数组下标时, 新数组值加一,最后把新...

网友评论

    本文标题:新特性8-并行数组排序

    本文链接:https://www.haomeiwen.com/subject/xnrrhctx.html