JAVA中JPasswordField实现密码的确认

Posted Equator

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA中JPasswordField实现密码的确认相关的知识,希望对你有一定的参考价值。

我们在设计注册模块时,经常要验证两次填写的密码是否一致,那么如何利用JPasswordField实现呢?

首先设计GUI界面:

实验1:利用getText()方法取得JPasswordField内容,但是这个方法已经被废弃。另外,简单地说,“equals()”与“==”比较一个对象的不同之处在于:“equals()”只比较对象的“内容”,而“==”比较的是对象的地址(当然,如果地址相同了,内容当然也相同)。

实验2:利用getPassword()方法取得JPasswordField内容,但是结果有点出乎意料,为什么passwordField1.getPassword().equals(passwordField2.getPassword())为假呢?

研究一下getPassword()方法:其返回值类型为char []。

那么char数组如何比较呢?下面这个方法不行。

如果把它转化为String类型,问题得解:

因此密码的比较也可以如法炮制:

看一哈源码:图示的两个条件都不满足,所以返回false。

那么问题来了,除了这个方法,还有其它更简单的方法吗?欢迎交流(手动滑稽)

以上是关于JAVA中JPasswordField实现密码的确认的主要内容,如果未能解决你的问题,请参考以下文章

直接从 JPasswordField 获取字符串格式的密码

java登录图形界面

使用字符数组保存密码, 比使用String保存密码更好

用java写一个登陆界面代码。

java基础 常用组件

JAVA swing常用组件