我对一个非常简单的字符串验证问题感兴趣,看看字符串中的起始字符是否以大写字母开头,然后让控制台显示 true 或 false。根据我的理解,您不必调用类似 System.console().printf("true", s) 之类的东西来实现这一点。我可以发誓我已经看到使用以下示例代码实现的类似基本实现:
public class Verify {
public static boolean checkStartChar(String s) {
if (s.startsWith("[A-Z]")) {
return true;
} else {
return false;
}
}
public static void main(String[] args) {
String str = "abCD";
checkStartChar(str);
}
}
但是当我运行这个时,没有任何显示。如果我在返回 T/F 之前通过添加条件打印输出进行轻微修改,例如
public class Verify2 {
public static boolean checkStartChar(String s) {
if (s.startsWith("[A-Z]")) {
System.out.println("yep");
return true;
}
else {
System.out.println("nope");
return false;
}
}
public static void main(String[] args) {
String str = "abCD";
checkStartChar(str);
}
}
问题已在一定程度上得到解决,因为控制台显示"is"或“否”,但尚未解决,因为我只想控制台显示 true 或 false。就是这样。建议?
最佳答案
由于问题已经得到解答,我想指出不需要正则表达式来解决这个问题(而且它们是昂贵的操作)。你可以简单地这样做:
static boolean startsWithUpperCase(String toCheck)
{
if(toCheck != null && !toCheck.isEmpty())
{
return Character.isUpperCase(toCheck.charAt(0));
}
return false;
}
关于java - Bool vals 不会在控制台中打印出来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14407688/