"||" не работает и выдает сообщение об ошибке в цикле while. «&&» делает, и это то, что мне нужно, но мне любопытно, почему это работает только так.
Это для домашнего задания для школы. && отлично работает и не выдает сообщения об ошибках. Я также пытался заключить в скобки отдельные выражения и переключать их, ни одно из которых не сработало.
//Below is line 29 in main calling the function
accCount = readAccts(acctNum, balance, MAX_NUM, inputfile);
//actual function attempting to read in data to an array
public static int readAccts(int[] acctNum, double[] balance,
int MaxAccts, Scanner inputfile)
{
int accCount = 0;
//loop inputs account number and balance into array
while(inputfile.hasNext() || accCount <= 50) {
//Line below is line 67 mentioned in error message
acctNum[accCount] = inputfile.nextInt();
balance[accCount] = inputfile.nextDouble();
accCount++;
}
При использовании «||» появляется сообщение об ошибке компиляции:
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at bankAccount.readAccts(bankAccount.java:67)
at bankAccount.main(bankAccount.java:29)