boolean hit = kb.next().toLowerCase.equals("y"); // Change something to see if kb.next() also equals "yes"
除非调用两次,否则不能使用equals
与两个字符串进行比较,如下所示:
String input = kb.next().toLowerCase();
boolean hit = input.equals("y") || input.equals("yes");
您也可以使用regex:
boolean hit = input.matches("y(es)?");
或者,如果您不介意匹配字符串“ye”
以及“y”
和“yes”
,则可以使用startswith
:
boolean hit = "yes".startsWith(input);
问题内容: 我是Java的新手,为了实践起见,我试图创建一个十六进制到十进制的数字转换器,因为我已经成功地制作了一个二进制到十进制的转换器。 我遇到的问题基本上是将一个字符串中的给定字符与另一个字符串进行比较。这就是我定义要比较的当前字符的方式: 这是我尝试比较角色的方法: 当我尝试通过仅输入数字(例如12)来运行代码时,它可以工作,但是当我尝试使用“ b”时,会出现一个奇怪的错误。这是运行程序的
我有一个字符串变量,其中可能有、和。
如果我有一个字符串,比如,是否可以使用作为字符串拆分的点,将字符串拆分为两个字符串?
问题内容: 我有一个字符串变量,有可能值,和。 我想使用if语句将所有这些值进行比较(大小写相等),例如: 有没有一种方法可以避免使用多个OR(||)运算符并在一个表达式中比较值?例如,像这样: 问题答案: 我找到了更好的解决方案。这可以通过RegEx实现: 对于不区分大小写的匹配:
如何检查一个字符串是否在另一个字符串中,但匹配项需要在前面,而不是中间或最后。例如,a="