почему этот метод не может работать для меня, чтобы создать одномерный массив? - PullRequest
0 голосов
/ 12 мая 2018

Я новичок в Java, я хочу использовать класс Scanner для создания метода, который я могу использовать в другом методе:

package my_train_1;

import java.util.Scanner;

public class Use_methods {

    public static void main(String[] args) {
        System.out.println("voila les nouvelles chaines de caractéres que vous vennez de saisir");
        saisir(sclavier);

    } 

    public static void saisir(String sclavier[]) {
        int p=0;
        while(p<5) {
            System.out.print("saisir une chaine de caracter");
            Scanner reader=new Scanner(System.in);
            sclavier[p]=reader.nextLine();
            p++;
        }

    }

}

, так что я могу сделать, чтобы правильно скомпилировать

Ответы [ 2 ]

0 голосов
/ 12 мая 2018
package my_train_1;

import java.util.Scanner;

public class Use_methods {

public static void main(String[] args) {
    System.out.println("voila les nouvelles chaines de caractéres que vous vennez de saisir");
    int p=0;
    String[] sclavier = new String[5];
    Scanner reader=new Scanner(System.in);
    while(p<5) {
        System.out.print("saisir une chaine de caracter");            
        sclavier[p]=reader.nextLine();
        p++;
    }

} 
0 голосов
/ 12 мая 2018

Когда вы вызываете saisir(sclavier);, sclavier - ничто, вы должны предоставить новый массив методу saisir(new String[5]);


Если вам нужно использовать его обратно после, сохраните его впеременная:

String[] res = new String[5];
saisir(res);
System.out.println(Arrays.toString(res));

Кроме того, используйте только один Scanner, а не новый каждый раз, нет необходимости

public static void saisir(String sclavier[]) {
    int p = 0;
    Scanner reader = new Scanner(System.in);
    while (p < 5) {
        System.out.print("saisir une chaine de caracter");
        sclavier[p] = reader.nextLine();
        p++;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...