java - 检查Java中的有效名称
问题描述
我想检查有效的名字和姓氏。这是我实现的代码,只要输入名字和姓氏的数字,它就会返回 false。但它允许用户包含字母或空格。
当我尝试输入数字时,以下 checkName 函数仍然返回 true:
public static boolean checkValidName(String name){
for(int i = 0; i < name.length(); ++i){
char ch = name.charAt(i);
if(!Character.isLetter(ch)){
return false;
}
if(!Character.isWhitespace(ch)){
return false;
}
return true;
}
return true;
}
解决方案
如果我们要检查name
不应该包含任何数字(但可以包含特殊字符,如, ,&
等%
)的条件。$
*
public static boolean checkValidName(String name) {
for (int i = 0; i < name.length(); ++i) {
char ch = name.charAt(i);
if (Character.isDigit(ch)) {
return false;
}
}
return true;
}
由于 OP 提到name
正在验证,我认为通常名称不包含数字和特殊字符。如果我们想将 限制name
为只有字母和空格(没有数字,也没有特殊字符,如, ,&
等%
),那么我们需要返回除了字母或空格之外的任何内容。$
*
false
character
public static boolean checkValidName(String name) {
for (int i = 0; i < name.length(); ++i) {
char ch = name.charAt(i);
// If the character is not a letter and not a whitespace, return false.
if (!Character.isLetter(ch) && !Character.isWhitespace(ch)) {
return false;
}
}
return true;
}
推荐阅读
- python - 使用 txt 文件输出将 5 个电子表格中的数据插入 sql
- java - Spring Cloud Data Flow 的自定义任务中缺少参数
- html - 在 Bootstrap 4 中向卡片添加自定义 CSS
- java - 从 WebHDFS Rest API 读取的 ORC 文件
- python - 我们可以在 python 中为每个创建一个吗
- python - 尝试在 Jupyter Notebook 中打开 TensorBoard 时出错?
- html - 如何将模型 ID 分配给由 JQuery 创建的 HTML 元素?
- cmake - pkg_config_modules 依赖失败,因为“不受控制”中的版本
- javascript - 重命名对象中的某些键
- bash - 如何找到目录