2016-02-19 1 views
-1

Я новичок в java, пишу программу только для удовольствия. Цель программы - взять int через std-хранилище в num [], а затем добавить 5 к нему. Очень просто, как всегда возникают проблемы с моим кодом. Чтобы уточнить, у меня возникают проблемы с фактическим вычислением, как сохранить stdin в массиве int, а затем передать его с помощью метода addNum. Спасибо. Вот мой код:Добавление в массив от stdin

class Array{ 
public static void main (String [] args) { 
    System.out.println(" enter four digits between 0-100"); 
    Scanner cin = new Scanner(System.in); 
    int n = cin.nextInt(); 

    int [] num = new int[4]; 
    int num1 = 0; 

} 
    public int addNum(int [] num, int num1){ 
     for(int i = 0; i < num1; i++) { 
      num[i]+=5; 

     } 
     return num1; 
      } 

} 

ответ

4

Как я понимаю, вы хотите добавить 5 к каждому номеру из стандартного ввода. Я изменил свой код следующим образом:

public class Array { 
public static void main(String[] args) { 
    System.out.println(" enter four digits between 0-100"); 
    Scanner cin = new Scanner(System.in); 

    int n = 4; 

    int[] num = new int[n]; 

    int i = 0; 

    while(cin.hasNext() && i < n) { 
     num[i] = cin.nextInt(); 
     i++; 
    } 

    int num1 = (new Array()).addNum(num, n); 

    for(int j : num) 
     System.out.println(j); 



} 

public int addNum(int[] num, int num1) { 
    for (int i = 0; i < num1; i++) { 
     num[i] += 5; 
    } 
    return num1; 
} 

}

Вы должны прочитать каждое число из стандартного ввода следующего

while(cin.hasNext() && i < n) { 
    num[i] = cin.nextInt(); 
    i++; 
} 

И после этого, если вы хотите запустить метод addNum вам нужно для создания объекта класса Array (потому что ваш метод не является статическим и не может запускаться непосредственно из основного метода). Может быть, лучше использовать ArrayList для хранения чисел из stdin. ArrayList можно легко преобразовать в массив с помощью метода someArrayList.toArray(). Я надеюсь, что то, что я написал, поможет вам.

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

  • Нет связанных вопросов^_^