0

我想说的是,如果文本框中的数字超过 10,那么文本就会改变。但是,Eclipse 不喜欢这个>符号。我究竟做错了什么?

if ( v == txtCarsInCarPark){
    txtCarsInCarPark = > 10;
    txtCarsInCarPark.setText("Car park Full");
}

此外,它似乎在这里做同样的事情。但是,这一次我试图在文本框低于 0 时禁用按钮。同样,它不喜欢该<符号。

if ( v == txtCarsInCarPark){
    txtCarsInCarPark = < 0;
    btnCarOut.setEnabled(false);
}
4

7 回答 7

8

if 语句的语法是:

if (x >= 10)
{
     // do something
}

在您的情况下,您首先需要将文本框中的字符串转换为整数:

num = Integer.parseInt(txtCarsInCarPark.getText().toString());
if (num >= 10)
    txtCarsInCarPark.setText("Car park Full");
于 2013-02-18T17:45:40.683 回答
1

您颠倒了符号的顺序,并在它们之间添加了空格,导致语法错误。正确的语法:

>=

<=

而且,当然,这应该在你的条件之内,而不是在外面:

if(v == txtCarsInCarPark && txtCarsInCarPark >= 10) {
    // stuff...
}

(假设您希望两个条件都匹配:v必须等于txtCarsInCarPark,并且它们至少应该是10)。

于 2013-02-18T17:45:19.843 回答
0

它应该是 >= not => 切换你的运营商,它会起作用

于 2013-02-18T17:45:46.947 回答
0

尝试 >= 和 <= 也没有空格

于 2013-02-18T17:45:50.993 回答
0

请改用 >= 和 <=

于 2013-02-18T17:46:48.793 回答
0

您的代码中的变量“ v ”是什么?

如果您只想检查 txtCarsInCarPark 的值,请将其放在if后面的括号中:

if (txtCarsInCarPark >= 10){
    txtCarsInCarPark.setText("Car park Full");
}
于 2013-02-18T17:48:46.567 回答
0

txtCarsInCarPark 这个数据类型是什么?

如果它是字符串或对象,您可能必须使用 compareTo()

于 2013-02-18T17:50:37.437 回答