Получение ввода из командной строки и передача его методу - PullRequest
0 голосов
/ 06 декабря 2009

Я получаю строковый массив из командной строки и отображаю его пользователю как целочисленный массив. В чем здесь может быть ошибка?

import java.lang.String;

public class arrayConvert {

    String strArray[];

    public int[] StrArrtoIntArr(String strArray[])
    {
        int intArray[] = new int[strArray.length];

        for(int count=0;count<strArray.length;count++)
        {
            intArray[count] = Integer.parseInt(strArray[count]);
        }

        return intArray;
    }

    public void displayArray(int intArray [])
    {
        for(int j=0;j<intArray.length; j++)
        {
            System.out.println(intArray[j]);
        }
    }

    public static void main(String[] args)
    {
        arrayConvert array_convert = new arrayConvert();
        array_convert.StrArrtoIntArr(args);
        array_convert.displayArray(intArray);
    }

}

Ответы [ 3 ]

5 голосов
/ 06 декабря 2009

Вы забыли сохранить промежуточный результат в своем основном классе:

public static void main(String[] args)
{
    arrayConvert array_convert = new arrayConvert();
    int[] intArray = array_convert.StrArrtoIntArr(args);
    array_convert.displayArray(intArray);
}

В вашем коде есть еще несколько вещей, которые вы можете посмотреть:

  • import java.lang.String; Вам не нужно это включать. java.lang автоматически импортируется.
  • String strArray[]; Эта переменная никогда не используется. Переменная strArray[] в StrArrtoIntArr является другой переменной в другой (локальной) области видимости. Хранение глобальной переменной может сбивать с толку.
0 голосов
/ 06 декабря 2009

Чёрт побил меня до удара!

Вы забыли хранить массив значений как:

int[] intArray = array_convert.StrArrtoIntArr(args);
0 голосов
/ 06 декабря 2009

Рукописный код для синтаксического анализа аргументов командной строки не нужен и утомителен, особенно если вам необходимо выполнить расширенный анализ. Вместо этого используйте стороннюю библиотеку, например Apache Commons CLI .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...