-4

我使用代码保存了一些用户输入;

String message3 = console.nextLine();

现在我想将变量 message3 乘以一个固定数字(比如 5.2)并再次在控制台上向用户显示该结果。message3 永远是一个数字

我试过使用代码:

String message4 = message3 * 3;

但它出现了以下错误:操作符 * 未定义参数类型 String, int。我知道当我删除 message3 并将其替换为有效的数字时。那么如何让变量 message3 与另一个数字相乘呢?我必须重命名message3吗?谢谢

4

5 回答 5

6

您必须将该字符串转换为原始数字。

你可以这样做

int integerNumber = Integer.parseInt(message3);

或者

double doubleNumber = Double.parseDouble(message3);

如果字符串不包含可转换的数字,则会抛出异常。

于 2012-09-17T13:33:51.500 回答
1

您应该首先转换类型以使乘法成为可能:

String message4 = Double.toString(Double.parseDouble(message3) * 3);

作为非数字类型,*运算符对 没有任何意义String

于 2012-09-17T13:34:14.187 回答
0

您需要转换message3为整数才能对乘法有效:

int result = Integer.parseInt(message3) * 3;

然后您可以将其分配给一个字符串,如下所示:

String message4 = "" + result; // or just Integer.toString(result);
于 2012-09-17T13:34:07.857 回答
0

您必须首先将字符串转换为整数。使用 java api,您可以使用 parseInt(String) 或使用 Integer(wrapper class) 构造函数来实现这一点,如下所示

  approach1
    String num="4";
     Integer.parseInt(num)*10;

   It throws Number format exception if the string is a non parsable int

  approach2
  String num="4";
   Integer i = new Integer(num)
于 2012-09-17T13:34:51.843 回答
0

如果输入是整数,您可以这样做:

String message3 = console.nextLine();
Integer myNumber = Integer.valueOf(message3) * 3;

或者

int myNumber = Integer.parseInt(message3) * 3;

为您要执行的操作使用适当的类型。

于 2012-09-17T13:35:05.080 回答