Scala从数组返回质数 [英] Scala return prime numbers from Array

查看:0
本文介绍了Scala从数组返回质数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是Scala的新手,所以对于这个非常基本的问题,我深表歉意。

我在Liner上有一个很棒的功能,它可以检查一个数字是否为质数。我试图用它做的是,让函数接受一个数组,然后吐出质数。

我如何才能最好地实现这一点?在单人班轮上也可以做到吗?谢谢!

def isPrime(num: Int): Boolean = (2 to num) forall (x => num % x != 0)

推荐答案

我想要做的是允许该函数接受一个数组并输出素数

您可以执行以下操作

def primeNumbs(numbers: Array[Int]) = numbers.filter(x => !((2 until x-1) exists (x % _ == 0)) && x > 1)

如果将数字数组传递为

println(primeNumbs(Array(1,2,3,6,7,10,11)).toList)

您应该得到

List(2, 3, 7, 11)

我希望这个答案是有帮助的

注意:您的isPrime函数不起作用

这篇关于Scala从数组返回质数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆