在java中更改另一个类的特定值
嗨,我正在尝试做一个基本的程序,它将递增一个给定的数字,直到它找到下一个素数,但我有问题使它工作在java中更改另一个类的特定值,java,Java,嗨,我正在尝试做一个基本的程序,它将递增一个给定的数字,直到它找到下一个素数,但我有问题使它工作 PrimeNumber(long eNumb) { number= eNumb; } public static void incrementNumber() { this.number = number + 1; } boolean foundNext = false; PrimeNumber findNext = new PrimeNumber(next);
PrimeNumber(long eNumb)
{
number= eNumb;
}
public static void incrementNumber()
{
this.number = number + 1;
}
boolean foundNext = false;
PrimeNumber findNext = new PrimeNumber(next);
while (!foundNext)
{
if (PrimeNumber.isPrime())
{
foundNext = true;
}
else
{
FindNext.incrementNumber();
}
}
我有isPrime方法在工作,但我似乎进入了一个无限循环。
对不起,问题不清楚
编辑:我输入了错误的代码,但仍然需要答案
foundNext = true is always true, I think you have to make it false
any were in your program.
假设
while (!foundNext) {
// foundNext = false; make it false on basis of any condtion
}
问题在于:
while (!foundNext) // it schould check if foundNext is prime number
代码可以简化如下:
PrimeNumber(long eNumb)
{
this.number= eNumb;
}
public void incrementNumber()
{
this.number++;
}
... // some code here. I assume that code below is inside some method.
PrimeNumber findNext = new PrimeNumber(next);
while (!findNext.isPrime()) // in tis solution I assume that number is not static field
{
findNext.incrementNumber();
}
iPrime正在检查这个.number吗?那个代码甚至无法编译。在任何方法之外都有一个while块。请发布正确的代码。isPrime方法的代码是什么?你确定PrimeNumber.incrementNumber有效吗?incrementNumber并不像我看到的那样是静态的。条件为否定,将true赋值给foundNext将中断循环。