字符串数组转换为整数

时间:2014-06-22 16:18:45

标签: java arrays

我有一大堆代码,我一直遇到问题:

    int n = 5;
    String[] variables = new String[31];
  //user input defining the strings in the array
for(int i = 1; i < n+1; i++)
{
    System.out.print("Define variable " + i + ": ");
    variables[i] = System.console().readLine();
    System.out.println("Variable " + i + " has been set to " + variables[i]);
}
int vfirstDigit;
  //some irrelevant code excluded
for(int firstDigit = 1; firstDigit < n+1; firstDigit++)
{
    switch(firstDigit)
    {
        case 1:             
        vfirstDigit = variables[1];
        break;              
    }
}

当我在switch语句中调用变量[1]时,编译器将其标记为错误,表示String数组不能转换为整数。当用户输入必须是字符时,为什么调用数组中的特定字符串会将其转换为整数?很确定我在这里做错了。

2 个答案:

答案 0 :(得分:0)

使用,

vfirstDigit = Integer.parseInt(variables[1]); // vfirstDigit is an int and variables[1] returns a String. you have to convert (parse) the String to an int.

parseInt()是Integer类中的静态方法。它有许多重载形式(即许多形式采用不同的参数)。它返回传递值的整数表示。

答案 1 :(得分:0)

Array是一个对象。您需要使用Integer的方法parseInt将其转换为数字。