如何在java中迭代一串数字/特殊字符?

时间:2017-07-17 23:04:53

标签: java java.util.scanner

例如,取一个字符串:"33 4 / 44 2 - ^"

我使用Scanner迭代整数但是一旦没有nextInt并且它遇到一个特殊字符,我将如何进行"获得"那个角色,然后移动到下一个int /特殊字符?

1 个答案:

答案 0 :(得分:3)

您可以使用int检查hasNextInt()是否可用。如果没有,请通过调用next()

来丢弃下一个令牌
Scanner scanner = new Scanner("33 4 / 44 2 - ^");
while (scanner.hasNext()) {
    if (scanner.hasNextInt()) {
        int nextInt = scanner.nextInt();
        System.out.println(nextInt);
    } else {
        // discard next token
        scanner.next();
    }
}

输出:

33
4
44
2