猿问

Java 等同于 pythons/haskells map() 函数与多处理/多线程?

我知道有些问题与我的相似。但是,它们似乎已经过时了(假设是 JDK 7 等)。因此,我已经编写了一段时间的 Python 程序,并且不得不为大学学习 Java。我知道Python中有一个功能,您可以使用线程/进程池将值列表映射到函数。


from multiprocessing.dummy import Pool as ThreadPool 

pool = ThreadPool(4) 

results = pool.map(my_function, my_array)

我必须在大量文件上使用该函数,我必须使用 Java (10) 并且我想使用多处理。我的问题是:Java 有这样的功能吗?如果是这样,正确使用它的最佳做法是什么?


蝴蝶刀刀
浏览 225回答 1
1回答

元芳怎么了

是的,您可以使用parallelStream,例如,将整数列表转换为字符串列表:List<Integer>&nbsp;list&nbsp;=&nbsp;List.of(1,&nbsp;2); List<String>&nbsp;strings&nbsp;= &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;list.parallelStream() &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.map(integer&nbsp;->&nbsp;String.valueOf(integer)).collect(Collectors.toList());
随时随地看视频慕课网APP

相关分类

Java
我要回答