我从命令行获取一个字符串数组,并将其作为整数数组显示给用户。这可能是什么错误?
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);
}
}
答案 0 :(得分:5)
您忘了将中间结果保存在主要课程中:
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
是不同(本地)范围内的不同变量。保持全局变量可能会令人困惑。答案 1 :(得分:0)
解析命令行参数的手写代码是不必要和繁琐的,特别是当您需要进行大量解析时。请改用第三方库,例如Apache Commons CLI。
答案 2 :(得分:0)
你忘了存储一系列的整数:
int[] intArray = array_convert.StrArrtoIntArr(args);