【发布时间】:2017-05-13 00:36:52
【问题描述】:
检查字符串是否使用规定的规则集形成。使用以下规则生成:
a.字符串以'a'开头
b.每个 'a' 后面都没有或后面跟着一个 'a' 或 "bb"
c.每个“bb”后面都没有或后面跟着一个“a”
我尝试了以下代码:
public static void main(String[] args) {
Scanner scn = new Scanner(System.in);
String str = scn.nextLine();
boolean b = false;
if (str.charAt(0) == 'a') {
if (str.charAt(1) == 'b') {
if (str.charAt(2) == 'b') {
b = true;
} else
b = false;
} else
b = false;
} else
b = false;
System.out.println(b);
}
代码没问题吗...??? 对于 input = aab,输出应为 false,对于 input =abba,输出应为 true。
【问题讨论】:
-
这个问题属于这里:codereview.stackexchange.com
-
您尝试运行代码了吗?你的结果是什么?
-
对于上述两个测试用例,它工作正常,但是当我在在线编码网站上尝试此代码时,它正在下降某些测试用例,我不知道为什么。
-
那个在线评委是什么?此外,如果字符串只是“a”,您的代码将给出空指针
-
您需要遍历整个字符串,而不仅仅是前 3 个字符。前“abbaaaabba”。