try 在Codecademy上查找此数组中的所有质数时,收到一个逻辑错误:
import java.util.Arrays;
import java.util.ArrayList;
class PrimeDirective {
// Add your methods here:
public void findPrime(int[] nums) {
ArrayList<Integer> primeNumbers = new ArrayList<Integer>();
for (int i = 0; i < nums.length; i++) {
if ((nums[i] % 2 != 0 || nums[i] % 3 != 0 ) || nums[i] % 5 != 0) {
primeNumbers.add(nums[i]);
} else { continue; }}
System.out.println(primeNumbers); }
public static void main(String[] args) {
PrimeDirective pd = new PrimeDirective();
int[] numbers = {6, 29, 28, 33, 11, 100, 101, 43, 89};
pd.findPrime(numbers);
}
}
我认为如果这个数不能被2、3或5整除,那么它就是质数.相反,该方法将所有数组项添加到我在方法中初始化的新ArrayList中.
我想这是我的数学问题,但在我的脑海里,这一切都是完全有意义的.