0

完整代码请访问http://ideone.com/7XHxSm

我正在尝试使用JTextField然后拉字符串值然后将值解析为整数。解析后,我需要将它们相乘。稍后,我会将它们全部加起来,加和乘以得到额外的数量,然后除以得到一个数字。

一旦你看到我的代码,你就会明白。我知道这有点神秘,但代码会解释。

我不知道发生了什么,因为我将值从中提取JTextField然后将其转换为整数,但 Java 拒绝转换它。

widthWall2 = Integer.parseInteger(wall2Width.getText());
heighthWall2 = Integer.parseInteger(wall2Heighth.getText());
//wall2Area = widthWall2*heighthWall2;
wall2Area = Integer.valueOf(wall2Width.getText()) * integer.valueOf(wall2Heighth.getText());
4

2 回答 2

1

JTextField并且Integer是不兼容的类型,因此不能将一个分配给另一个。您想设置`JTextField . 代替

wall2Area = Integer.valueOf(wall2Width.getText()) *
              integer.valueOf(wall2Heighth.getText());

wall2Area.setText(Integer.toString(Integer.valueOf(wall2Width.getText()) * Integer.valueOf(wall2Heighth.getText())));

另外,更换

Integer.parseInteger(wall2Width.getText())

Integer.parseInt(wall2Width.getText())

始终检查文档

于 2013-03-14T02:19:25.070 回答
1

正如标题,我理解的问题是:

wall2Area = Integer.valueOf(wall2Width.getText()) *
          integer.valueOf(wall2Heighth.getText());

您尝试将Integer值分配给JTextField. 将其更改为:

wall2Area.setText(Integer.valueOf(wall2Width.getText()) *
          integer.valueOf(wall2Heighth.getText()));
于 2013-03-14T02:21:22.260 回答