2016-04-10 8 views
0

私はユーザーに入力を求める3つの整数の配列を作成した後、その配列を返してクラスをインスタンス化しましたが、配列の項目へのアクセス:メソッドから配列を戻してJavaの別のメソッドで使用する方法

import java.util.Scanner; 

public class Input { 
    public static int[] getInput() { 
     Scanner sc = new Scanner (System.in); 
     int choice[] = new int[3]; 
     System.out.println("Type the options: "); 
     System.out.println("Plate: "); 
     choice[0] = sc.nextInt(); 
     System.out.println("Dessert: "); 
     choice[1] = sc.nextInt(); 
     System.out.println("Drink: "); 
     choice[2] = sc.nextInt(); 
     return choice; 
     } 
} 

メインクラス:

public class Main 
{ 
    public static void main (String [] args) { 

     Menu menu = new Menu(); 
     Input input = new Input(); 

     menu.ShowMenu(); 
     Input.getInput(); 


     //I want to compare choice[0] here 
     if (input.getInput() == 1) { 
      //code block 
      } 

は、私は3つの選択肢のメソッドを記述する必要がありますか?私は、Mainクラスで使用する3つのユーザー入力を渡したいとします。

答えて

1

int[] arr=Input.getInput()を書きます。メソッドの結果を変数に格納する必要があります。

あなたはよりARR [インデックス]で要素にアクセスすることができ、例えばインデックス0から始まる、a[0]

1

変数に戻り値を保存します。代わりにInput.getInput()

int[] choices = Input.getInput(); 

if (choices[0] == 1) { 
    ... 
} 
1
int[] inputs = Input.getInput(); 

if (inputs[0] == 1) { ... } 
1

配列であり、静的である...ので、あなたは、この宣言を保存することができます。

Input input = new Input(); 

とあなただけ行う必要があります。

if (Input.getInput()[0] == 1) { 
     //code block 
} 
関連する問題