0

该程序假设检查一个字符串是否是连续的,包括诸如zab和901234之类的字符串。我对每个字符串都写了一个异常,因此如果它们出现,我可以跳过90或za。不幸的是,我似乎无法进入 if 代码块......我不知道为什么。如果有人可以帮助我进入这个 901,将不胜感激。

   for (int i=0; i<s.length()-1; i++){
        if (s.charAt(i) == 9 && s.charAt(i + 1) == 0) {
            System.out.println("in");
        }
    }
4

2 回答 2

5

请记住,整数通过 ASCII 表转换为字符,因此您characters '9'需要'0'

您的原始代码实际上是在寻找null(0) 和backspace(9) 字符。此处有关 ASCII 表的更多信息:ASCII 表

for (int i=0; i<s.length()-1; i++){
    if (s.charAt(i) == '9' && s.charAt(i + 1) == '0') {
        System.out.println("in");
    }
}
于 2013-10-20T04:59:39.150 回答
2

您需要测试字符:

if (s.charAt(i) == '9' && s.charAt(i + 1) == '0') {
于 2013-10-20T04:58:38.427 回答