Kotlin实现确认密码校验功能 附现有密码验证代码
确认密码校验完整实现
实现逻辑说明
确认密码校验需要覆盖两个判定条件,不需要重复编写正则逻辑:
- 首先校验确认密码输入本身符合已定义的密码格式规则,直接复用已有的
passwordValidate方法即可,避免后续修改密码规则时需要同步改两处代码 - 其次校验确认密码输入值和原密码输入值完全一致,直接做字符串等值判断即可,不需要用正则实现等值匹配
完整代码实现
注意原方法框架只传入了确认密码的文本,需要补充原密码文本作为入参,才能完成一致性比对:
private fun confirmpasswordValidate(confirmPwdText: String?, originalPwdText: String?): Boolean { // 先走通用密码格式校验 if (!passwordValidate(confirmPwdText)) { return false } // 再校验两次密码输入完全一致 return confirmPwdText == originalPwdText }
调用示例
在触发校验的逻辑里,分别拿到原密码输入框和确认密码输入框的文本传入即可:
// 获取两个输入框的文本内容 val inputPassword = binding.etPassword.text?.toString() val inputConfirmPwd = binding.etConfirmPassword.text?.toString() // 执行校验 val confirmPwdPass = confirmpasswordValidate(inputConfirmPwd, inputPassword)
补充说明:如果原密码输入本身就不符合格式规则,确认密码校验自然不会通过,不需要额外在这个方法里重复校验原密码格式,保持方法职责单一即可。
内容的提问来源于stack exchange,提问作者Horalo
相关产品推荐
相关产品推荐

