📅  最后修改于: 2023-12-03 15:22:19.086000             🧑  作者: Mango
在Java中,我们可以使用Lambda表达式来检查一个字符串是否仅包含字母。下面是一个演示Lambda表达式如何检查字符串的例子:
public class Main {
public static void main(String[] args) {
String str = "HelloWorld";
boolean isAlphabeticOnly = str.chars().allMatch(Character::isLetter);
if(isAlphabeticOnly) {
System.out.println(str + " contains only alphabetic characters");
} else {
System.out.println(str + " contains non-alphabetic characters");
}
}
}
上面这段代码中,我们首先定义了一个字符串变量 str
,然后使用 chars()
方法将字符串转换为一个字符流。然后我们使用 allMatch()
方法和 isLetter()
方法来检查字符流中的每个字符是否都是字母。如果所有字符都是字母,allMatch()
方法将返回 true
,否则返回 false
。
在上面的代码中,我们使用的是方法引用 Character::isLetter
来将 Lambda 表达式传递给 allMatch()
方法。这段代码等价于下面的 Lambda 表达式:
str.chars().allMatch(c -> Character.isLetter(c))
但是,由于 isLetter()
方法接受一个字符作为参数,因此我们可以使用方法引用来简化代码。
综上所述,使用Lambda表达式可以很容易地在Java中检查一个字符串是否仅包含字母。