需要运行一个代码,该代码遍历从2到-number的数字,并在isPrime方法中给出一个关于输入数字的布尔值。不管我输入了什么,我总是得到“真”,7,28等等。
// Import statement:
import java.util.ArrayList;
class PrimeDirective {
// Add your methods here:
public boolean isPrime(int number) {
int prime = 0;
int checkPrime = number % 1;
if (number == 2) {
return true;
}
if (number < 2) {
return false;
}
for (int i = 2; i < number; i++) {
if (number % i == 1) {
return true;
} else {
return false;
}
}
}
public static void main(String[] args) {
PrimeDirective pd = new PrimeDirective();
int[] numbers = { 6, 29, 28, 33, 11, 100, 101, 43, 89 };
System.out.println(pd.isPrime(7));
}
}
如果只检查数字的一半,就可以找到结果并优化代码,因为理想情况下,我们只需要检查数字的平方根。
public boolean isPrime(int number){
for(int i=2;i<number/2;i++)
if(number%i==0)
return false;
return true;
}
检查一个数字是否为素数更容易。您的代码如下所示:
for(int i = 2; i < number; i++)
if (number % i == 0 && number != i)
return false;
return true;
首先,先除以2来消除2。这允许您检查奇数是否可除。
public boolean isPrime(int v) {
if (v == 1 || v%2 == 0) {
return false;
}
// then you just need to check for divisibility up to the
// square root of the number.
int max = (int)Math.sqrt(v) + 1;
for (int i = 3; i <= max; i+=2) {
if (v % i == 0) {
return false;
}
}
return true;
}
问题内容: 我有这种方法,可以在登录前检查用户名和密码。现在,我的for循环仅检查第一个项目,它发现第一个项目不满足第一个条件,因此与其去检查第二个项目,它只是中断并返回null。 为什么会这样? 这是我的方法: 问题答案: 因此,请尝试此代码。
问题内容: 在Java中的for循环中防止空值的最佳方法是什么? 这看起来很丑: 要么 可能没有其他办法。他们是否应该将它放在构造本身中,如果它为null,则不要运行循环? 问题答案: 您最好验证从哪里获得该列表。 空列表就是您所需要的,因为空列表不会失败。 如果您从其他地方获得此列表,并且不知道是否可以,则可以创建一个实用程序方法并像这样使用它: 当然是:
问题内容: 我试图设置获取所有元素的ID 。我写了以下代码: 但是我在控制台中得到以下输出: 这不是我所期望的。为什么第二个控制台输出却第一个控制台输出是? 问题答案: 在回答原始问题时,您使用不正确。在您的代码中,是索引。因此,要从伪数组中获取值,就必须这样做,而要获取id,就必须这样做。但是,首先不应该这样做。 摘要 永远不要使用来迭代nodeList或HTMLCollection。避免它的原
我试图创建一个可以识别父子循环的函数<想象 对象A是对象B的父对象 对象B是对象C的父对象 创建一个可以防止父子循环的函数。该函数应该给出至少两个参数(ChilName、家长名),如果关系创建了一个循环,则会出错。在上面的例子中,如果我们通过(A、C)应该打印或传递字符串: “A是C的父级” 我知道如何创建这个函数(你可以用任何语言提供答案): 我的主要问题是如何在异常中提供正确的消息。(“A是C
在上面的代码中,我根据天气与否计算每个指数,每个指数都是=到零。然而,它总是在foreach循环中运行false,在for循环中运行true。有人能解释一下幕后发生了什么让这一切发生吗? 我不是按顺序运行它们,它们都是为了演示目的。
问题内容: 我的问题是关于在哪些Java检查的条件for循环时,有一个print语句的顺序做 在 该循环的“条件”。这似乎是不切实际的事情(我从未见过以任何实际方式使用它),尽管我对打印的内容缺乏理解,使我认为我可能不完全了解for循环的功能。在最近的一次考试中出现了以下问题: 输入n = 5时,以下方法将打印什么? 正确的答案是:0 1 2 3 4 5 在我看来,该循环应该打印-1,然后将i递增