嘿所以这是我的代码:
if(repeat)
{
Guesses++;
String Input = JOptionPane.showInputDialog("Enter a number between 0 and 10. So far you have had " + Guesses + " guesses.");
Float.parseFloat(Input);
if(**Input > RandomNum**)
{
JOptionPane.showMessageDialog(null, "Too small.");
}
else if(if(repeat)
{
Guesses++;
String Input = JOptionPane.showInputDialog("Enter a number between 0 and 10. So far you have had " + Guesses + " guesses.");
Float.parseFloat(Input);
if(Input > RandomNum)
{
JOptionPane.showMessageDialog(null, "Too small.");
}
else if(Input = RandomNum)
{)
(这只是其中的一部分) 带有**的文本是我收到错误的地方。它说
虽然我(想)我把输入更改为浮动(Float.parseFloat(输入);) 所以你知道问题是什么吗? (如果已经回答了这个问题,那么你可以给我一个链接吗?)
答案 0 :(得分:4)
Float.parseFloat(Input);
不会更改输入。 It parses a String
and creates a float
from its representaion。将其结果分配给变量并使用它来比较
float parsedValue = Float.parseFloat(Input);
if(parsedValue > RandomNum)
答案 1 :(得分:3)
Float.parseFloat(String input)
返回float
,它不会将运行时对象转换为另一种类型,因为Java中没有方法。
您应该将返回的值保存在某处并改为使用它:
float floatInput = Float.parseFloat(input);
if (floatInput > randomNum)
...