我对编码很陌生,对vb的了解有限。我试图在 java 中掌握这些知识,并试图创建一个简单的搜索 java 程序,该程序根据输入和输出信息搜索数组,以帮助了解循环和多维数组。
我不确定为什么我的代码不起作用,
package beers.mdarray;
import java.util.Scanner;
public class ProductTest
{
public static void main(String[] arg)
{
String [][] beer = { {"TIGER", "2"}, {"BECKS", "2"}, {"STELLA", "3"} }; //creating the 2 by 3 array with names of beer and their corresponding stock levels.
System.out.print("What beer do you want to find the stock of?: ");
Scanner sc = new Scanner(System.in);
String beerQ = sc.next(); // asking the user to input the beer name
int tempNum = 1;
if (!beerQ.equals(beer[tempNum][1]))
{
tempNum = tempNum + 1; //locating he location of the beer name in the array using a loop to check each part of the array.
}
System.out.println(beer[tempNum][2]); //printing the corresponding stock.
}
}
这是我得到的输出但是我不确定它的含义:
What beer do you want to find the stock of?: BECKS
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
at beers.mdarray.ProductTest.main(ProductTest.java:20)
尽管它看起来像一个简单的问题,但使用搜索功能我找不到太多关于我的问题的信息。
可能有一种更简单的方法来做我正在尝试的事情,我会对此感兴趣,但我也想知道为什么我的方法不起作用。