java - Bool vals 不会在控制台中打印出来

标签 java string printing console boolean

我对一个非常简单的字符串验证问题感兴趣,看看字符串中的起始字符是否以大写字母开头,然后让控制台显示 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/

相关文章:

c - 如何通过检查分隔符在字符串中添加字符?

linux - 向现有 PDF 文件添加裁剪标记

java - 是否可以在 libgdx Android 项目中使用 RxJava?

java - BufferedReader 将什么字符解释为流的结尾?

c++ - 将保存二进制的字符串转换为 float

c++ - vector<string> 超出范围后不清除内存

linux - 确定正确的/dev/usb/lp*

JavaScript WIndow Print - 我希望它打印特定的 div

java - 删除链表中具有给定键的节点

java - swagger-maven-plugin 不会为单个请求映射生成 "paths"元素