如何为Password类添加密码有效性校验方法?
为Password类添加密码有效性校验方法
修正后的完整代码
import 'dart:io'; void main(){ final myOwn = Password(); myOwn.value = stdin.readLineSync()!; print(myOwn); // 调用校验方法并输出结果 if (myOwn.isValid()) { print('密码有效'); } else { print('密码无效,长度需至少8个字符'); } } class Password { String value = ''; // 校验密码长度是否达标 bool isValid() { return value.length >= 8; } void toJson() { print('Your password is $value'); } @override String toString() { return 'Your password is $value'; } }
关键修改说明
- 移除了原代码中无意义的默认构造函数
Password(){ this.value = value; },该构造函数未起到任何初始化作用,因为value成员变量默认就是空字符串。如果需要在实例化时直接传入密码,可替换为带可选参数的构造:Password([this.value = '']);。 - 添加
isValid()方法,返回布尔值判断密码长度是否≥8,这就是你需要的有效性校验逻辑。 - 在
main函数中调用isValid()方法,根据返回结果输出对应的有效性提示。 - 移除了未使用的
dart:math和dart:core导入,dart:core是Dart默认导入的库,无需显式声明。
内容的提问来源于stack exchange,提问作者Chibueze
相关产品推荐
相关产品推荐

