Java扫描仪故障[重复]

问题描述 投票:1回答:1

最近我开始学习Java。可能这是一个愚蠢的问题:使用'p'字符作为我的扫描仪的分隔符,我希望输出为

42

17

Hello World

虽然是

42

17

pHello世界

分隔符可能会从扫描仪的令牌中排除,所以为什么还要在最后一行打印'p'char?

'''

public static void main(String[] args) {
    String s = "42p17pHello World";
    Scanner scan = new Scanner(s);
    scan.useDelimiter("p");
    System.out.println(scan.nextInt());
    System.out.println(scan.nextInt());
    System.out.println(scan.nextLine());
    scan.close();
}

'''

java input java.util.scanner
1个回答
1
投票

调用nextLine()会从扫描仪读取下一行,并且似乎不会在定界符处停止。将nextLine()呼叫替换为next()

© www.soinside.com 2019 - 2024. All rights reserved.