📜  Java中的 Scanner useDelimiter() 方法及示例(1)

📅  最后修改于: 2023-12-03 15:16:26.269000             🧑  作者: Mango

Java中的 Scanner useDelimiter() 方法及示例

简介

在Java中,Scanner是一个实用的类,它主要用于从各种流中读取原始数据类型和字符串。其中,Scanner类的useDelimiter()方法用于指定一个分隔符,用于将文本分成令牌,可以使用next()和nextXXX()方法获得这些令牌。这个方法的默认行为是使用正则表达式\s(任意空格符)来作为分隔符。

语法

下面是useDelimiter()方法的语法:

public Scanner useDelimiter(String pattern)

其中,pattern参数是一个String类型的正则表达式,用于指定分隔符。

示例

下面是一个简单的示例,演示了如何使用useDelimiter()方法将字符串分成令牌:

import java.util.Scanner;

public class ScannerDemo {
    public static void main(String[] args) {
        String input = "Hello, World! How are you?";
        Scanner scanner = new Scanner(input);
        scanner.useDelimiter("\\s*,\\s*"); //指定分隔符为逗号,可带空格
        while (scanner.hasNext()) {
            System.out.println(scanner.next());
        }
        scanner.close();
    }
}

输出结果为:

Hello
World! How are you?

在上面的示例中,我们使用useDelimiter()方法来指定一个逗号作为分隔符,可带任意数量的空格。然后,我们使用while循环来迭代Scanner的各个令牌,然后打印每个令牌。在上面的输出中,我们可以看到“Hello”和“World! How are you?”是两个不同的令牌。这是因为我们使用“\s*,\s*”作为分隔符,所以我们的字符串被分成了两部分,其中逗号和可选的空格被丢弃。

总结

在本文中,我们介绍了Java中的Scanner useDelimiter()方法及其语法和用法示例。如果您希望进一步了解Scanner类和其它Java API,请参考Oracle Java SE文档。