0

ユーザーが(cmd行を介して)形成する配列を設定する必要がある割り当てがあり、ユーザーは長さとその中に含まれる数字を決定します。ユーザーにプロンプ​​トを表示するようには見えませんが、実行してもエラーは発生しません。

これは私がこれまでに持っているものです:

class hw8064 {
      static void createArray(int x1, int y1){

     int numElements;

     double[] a1;
     a1 = new double[x1];
     double[] a2;
     a2 = new double[y1];
     for (int i=0; i<=a1.length; i++){
         System.out.println("Please enter a double for array 1[<i>] and one for array 2[<i>]:");
     }


     }  
     public static void main(String [] args){
      int numElements;
      if (args.length > 0){
          try{
              numElements = Integer.parseInt(args[0]);
          } catch (NumberFormatException e){
              System.out.println("Argument must be an integer");
              System.exit(1);
              }
          }
      }
    }

また、JRE で int を解析できるようにプロジェクト ファイルを構成するときに、引数に何かを設定する必要があることもわかっていますが、何がわからないのですか。よろしくお願いします。

編集:変数が見つからないことを除いて、ほとんど設定しています...

java.util.Scanner をインポートします。

クラス hw8064 {

public static void createArray(double x1, double y1, int numElements) {
    Scanner in = new Scanner(System.in);

    double a1[] = {x1};
    a1 = new double[numElements];
    double a2[] = {y1};
    a2 = new double[numElements];
    for (int i = 0; i <= a1.length; i++) {
        System.out.println("Please enter a double for array 1[<" + i + ">]and one for array 2[<" + i + ">]:");

    }

}

public static void main(String[] args) {

    if (args.length > 0) {

        try {
            int numElements = Integer.parseInt(args[0]);

        } catch (NumberFormatException e) {
            System.out.println("Argument must be an integer");
            System.exit(1);
        }
        try {
            int numElements = Integer.parseInt(args[0]);
        } catch (ArrayIndexOutOfBoundsException e) {
            System.out.println("Please enter an integer for the argument");
            System.exit(1);
        }

    }
    createArray(***numElements***);
}

}

メソッドを呼び出す最後の行で問題が発生しています

4

1 に答える 1