首页 > 编程语言 > 详细

JAVA中JPasswordField实现密码的确认

时间:2018-07-13 20:07:05      阅读:625      评论:0      收藏:0      [点我收藏+]

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

首先设计GUI界面:

技术分享图片

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

技术分享图片

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

技术分享图片

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

技术分享图片

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

技术分享图片

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

技术分享图片

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

技术分享图片

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

技术分享图片

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

JAVA中JPasswordField实现密码的确认

原文:https://www.cnblogs.com/Libinkai/p/9306790.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!