我正在使用此代码,由于某种原因,我收到了No Such Element Exception ...
numCompanies正在从键盘导入,并且显示正确,并且Portfolio是[numCompanies] [4]的数组。
谁能找出原因?
for(int i = 0; i < numCompanies; i++)
{
System.out.print("Stock #" + (i+1) + ": ");
String stockData = kbReader.nextLine();
System.out.print("\n\n hi" + stockData);
Scanner stockLine = new Scanner(stockData);
for(int j = 0; j < 4; j++)
{
portfolio[i][j] = stockLine.next();
}
}
最佳答案
我没有测试过,但是即使没有元素,也可能调用了stockLine.next();
。因此,这可能会有所帮助:
for(int j = 0; j < 4; j++)
{
if( stockLine.hasNext() ) {
portfolio[i][j] = stockLine.next();
}
else
{
portfolio[i][j] = 0; // or whatever you want it to be by default
}
}
这将解决错误消息,但不能解决故障。