0

我在 grails 中遇到了 IF 条件的语法问题。

这是代码:

int ab = 9999
    println(ab+"ab")
    println(params.username+"parameter")


    if (params.username == ab)
    {
        println("hello")
    }
    else
    {
        println("fail")
    }

这是 GSP 中的代码:

<form>
Username:<g:textField name ="username"></g:textField>
 <g:actionSubmit value="Submit" action="abc" type="button"/>
</form>

结果是:

9999ab
9999parameter
fail

所以问题是,我希望代码打印你好。但是每当我在用户名文本字段中输入“9999”时。它只是没有通过条件并立即进入其他状态。有人知道发生了什么吗?非常感谢

4

1 回答 1

4

您正在尝试将 String 与 int 进行比较,您可以执行以下操作:

def ab = "9999"

if (params.username == ab)
{
    println("hello")
}
else
{
    println("fail")
}

或者如果你想比较整数:

int ab = 9999


if (params.int(username) == ab)
{
    println("hello")
}
else
{
    println("fail")
}
于 2012-12-13T03:20:21.110 回答