Java程序检查字符是否是字母
要理解此示例,您应该具备以下 Java 编程 主题的知识:
示例 1:使用 if else 检查字符是否为字母的 Java 程序
public class Alphabet {
public static void main(String[] args) {
char c = '*';
if( (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z'))
System.out.println(c + " 是字母。");
else
System.out.println(c + " 不是字母。");
}
}
输出
* 不是字母。
在 Java 中,char
变量存储字符的 ASCII 值(介于 0 到 127 之间的数字),而不是字符本身。
小写字母的 ASCII 值从 97 到 122,大写字母的 ASCII 值从 65 到 90。即,字母 a
存储为 97,字母 z
存储为 122。同样,字母 A
存储为 65,字母 Z
存储为 90。
现在,当我们将变量 c 与 'a' 到 'z' 和 'A' 到 'Z' 进行比较时,变量与字母的 ASCII 值 97 到 122 和 65 到 90 分别进行比较。
由于 *
的 ASCII 值不在字母的 ASCII 值范围内。因此,程序输出 * 不是字母。
您也可以使用 Java 中的三元运算符解决这个问题。
示例 2:使用三元运算符检查字符是否为字母的 Java 程序
public class Alphabet {
public static void main(String[] args) {
char c = 'A';
String output = (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')
? c + " 是字母。"
: c + " 不是字母。";
System.out.println(output);
}
}
输出
A 是字母。
在上述程序中,if else 语句被三元运算符(? :
)替换。
示例 3:使用 isAlphabetic() 方法检查字符是否为字母的 Java 程序
class Main {
public static void main(String[] args) {
// 声明一个变量
char c = 'a';
// 检查 c 是否为字母
if (Character.isAlphabetic(c)) {
System.out.println(c + " 是字母。");
}
else {
System.out.println(c + " 不是字母。");
}
}
}
输出
a 是字母。
在上述示例中,请注意表达式,
Character.isAlphabetic(c)
这里,我们使用了 Character
类的 isAlphabetic()
方法。如果指定变量是字母,则返回 true
。因此,执行 if
块内的代码。