Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将变量指定给数组中的特定元素?_Java_Arrays_Frameworks - Fatal编程技术网

Java 如何将变量指定给数组中的特定元素?

Java 如何将变量指定给数组中的特定元素?,java,arrays,frameworks,Java,Arrays,Frameworks,我希望访问数组中的某个值,该值被分配用于运行代码的特定部分。例如,如果我的数组由数字1到6组成,其中每个数字都分配给通过键盘输入的变量,该变量运行我代码的一部分,我将如何实现这一点?到目前为止我只需要 public class yTerminal { public static void main(String[] args) { screen.println("Press key to access function: "); screen.pri

我希望访问数组中的某个值,该值被分配用于运行代码的特定部分。例如,如果我的数组由数字1到6组成,其中每个数字都分配给通过键盘输入的变量,该变量运行我代码的一部分,我将如何实现这一点?到目前为止我只需要

public class yTerminal {
public static void main(String[] args)
{               
    screen.println("Press key to access function: ");
    screen.println("1 - Open \n2 - Close \n3 - Help \n" 
    + "4 - Internet \n5 - Call \n6 "
    + "- Go");

    int[] numberInput = new int[5];
    int i;
    for (i=1; i < 7; i++)
        numberInput[i] = keyboard.readInt("Enter key corresponding to function: ");     

}
公共类Y终端{
公共静态void main(字符串[]args)
{               
screen.println(“按键访问功能:”);
println(“1-打开\n2-关闭\n3-帮助\n”
+“4-互联网\n5-呼叫\n6”
+“-Go”);
int[]numberInput=新的int[5];
int i;
对于(i=1;i<7;i++)
numberInput[i]=keyboard.readInt(“输入对应于函数的键:”);
}

}

我相信这是一个比使用数组更好的实现

Scanner sc = new Scanner(System.in);
int choice;
while(true){
     System.out.print("Enter key to access functions:");
     choice = sc.nextInt();
     switch(choice) {
     case(1):
          do function:open;
          break;
     case(2):
          do function:close;
          break;
     case(3):
          do function:help;
          break;
     case(4):
          do function:internet;
          break:
     case(5):
          do function:call;
          break;
     case(6):
          do function:go;
          break;
     default:
          System.out.println("Invalid Input");
          break;
     }
}
两个概念-

1) 读取用户输入。您可以使用通过键盘获取用户输入

for eg.
    Scanner reader = new Scanner(System.in);
    System.out.println("Enter key corresponding to function: ");
2) 根据用户输入调用相应的代码段。这个案子最有效

switch(reader.nextInt()) {
    case '<whatever_number>': 
    // your piece of code. 
    break;
}
开关(reader.nextInt()){
案例“”:
//你的代码。
打破
}

我不确定你到底在问什么,但听起来你想要一张地图。听起来他可以在输入上使用一个switch-case方法来运行一些方法,Java数组中的方法从零开始编号。在5元素数组中,您的
for
循环计数从1到6;你应该从
i=0
数到
i
。我想你问错问题了。您可以告诉我们您的尝试是什么,但问题更倾向于选择一个用户输入,而不是:
将变量分配给数组中的特定元素?
是否要有6个键盘输入?还是只有一个介于1和6之间的数字?如果是这样,就不需要数组了。Btw编号\u输入[i]=。。。将导致i>4的ArrayIndexOutOfBoundsException