[英]Strange behaviour when updating a Label with a TextField (Possible bug in JavaFX8)?
[英]Strange behaviour of wicket TextField
我正在为我的Web服务开发一个wicket客户。
在使用检票口的第一步中,我注意到了一种奇怪的行为。 我有一个输入用户名的表格:
<form wicket:id="registerForm">
User Name <input type="text" wicket:id="userId"/><br/>
<input type="submit" value="Register"/>
</form>
我的提交内容如下:
private TextField userIdField;
private Form form;
public Register() {
userIdField = new TextField("userId", new Model(""));
form = new RegisterForm("registerForm");
form.add(userIdField);
add(form);
}
class RegisterForm extends Form {
public RegisterForm(String id) {
super(id);
}
@Override
public void onSubmit() {
String userId = Register.this.getUserId();
if(userId == "test") {
System.out.println("normal");
}
else {
System.out.println("strange");
}
}
}
protected String getUserId() {
return userIdField.getDefaultModelObjectAsString();
}
}
当我在表单中输入test时,控制台会显示“ strange”。
它出什么问题了?
请记住,Java中有关字符串的相等性检查应使用String.equals()
方法。 仅当两个操作数是同一实例时,才使用==
返回true
。
if (userId.equals("test")) {
System.out.println("normal");
}
这个问题可能对您有用: 如何比较Java中的字符串?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.