2013-12-01 5 views
0

У меня есть назначение, в котором я должен выполнять операции над массивом в Java, я должен делать отдельные функции каждой операции, которую я буду писать, но я не могу понять, как вызвать метод с параметрами массива. Обычно я программирую в C++, но это назначение находится в java. Если кто-нибудь из вас может мне помочь, я был бы очень благодарен. :)Как мне вызвать метод с параметром массива в java?

public class HelloJava { 
    static void inpoot() { 
     Scanner input = new Scanner(System.in); 
     int[] numbers = new int[10]; 

     System.out.println("Please enter 10 numbers "); 
     for (int i = 0; i < numbers.length; i++) { 
      numbers[i] = input.nextInt(); 
     } 
    } 

    static void outpoot(int[] numbers) { 
     for(int i = 0; i < numbers.length; i++) { 
       System.out.println(numbers[i]); 
     } 
    } 

    public static void main(String[] args) { 
     inpoot(); 
     outpoot(numbers); //can not find the symbol 
    } 
} 
+0

Как так: 'outpoot (номера)' а где 'numbers' массив должен родом из? –

+0

от пользователя в функции inpoot(). – user3054791

+0

Если вы программируете на C++, вы уже должны знать, что методы вызова, которые принимают массив как параметр, точно совпадают. –

ответ

4

Ваш метод inpoot должен вернуть int[] массив, а затем передать его в outpoot в качестве параметра:

public class HelloJava {  
    static int[] inpoot() { // this method has to return int[] 
     Scanner input = new Scanner(System.in); 
     int[] numbers = new int[10]; 

     System.out.println("Please enter 10 numbers "); 
     for (int i = 0; i < numbers.length; i++) { 
      numbers[i] = input.nextInt(); 
     } 
     return numbers; // return array here 
    } 

    static void outpoot(int[] numbers) { 
     for(int i = 0; i < numbers.length; i++) { 
      System.out.println(numbers[i]); 
     } 
    } 

    public static void main(String[] args) { 
     int[] numbers = inpoot(); // get the returned array 
     outpoot(numbers); // and pass it to outpoot 
    } 
} 
+0

Спасибо :) Это было полезно. :) – user3054791

0

При вызове outpoot должно быть outpoot (номера);

+0

не работает, я пробовал. Появится сообщение «Невозможно найти символ». – user3054791

+0

Это потому, что числа - это локальная переменная, объявленная в методе inpoot. Это вне сферы действия. Я главный метод. –

+0

И вот что я спрашиваю, как мне передать массив чисел там. Я имею в виду, что я делаю, чтобы заставить массив взять inpoot и передать его в вызове outpoot в основной функции. – user3054791

Смежные вопросы