use*_*355 1 java swing jpasswordfield
可能重复:
如何检查JPassword字段是否为空
在创建登录注册表单时,我使用了两个密码字段.在保存数据之前,我想比较两个字段; 如果它们匹配,则数据应保存在文件中.如果没有,它应该打开一个对话框.请任何人都可以帮助我.
Rei*_*eus 10
最安全的方法是使用Arrays.equals:
if (Arrays.equals(passwordField1.getPassword(), passwordField2.getPassword())) {
// save data
} else {
// do other stuff
}
Run Code Online (Sandbox Code Playgroud)
说明: JPassword.getText故意弃用以避免使用Strings赞成使用char[]返回的getPassword.
在调用时,getText您将获得一个可能无法更改的String(不可变对象)(反射除外),因此密码会保留在内存中,直到收集垃圾为止.
但是可以修改char数组,因此密码将不会留在内存中.
上述解决方案符合该方法.
| 归档时间: |
|
| 查看次数: |
10224 次 |
| 最近记录: |