欢迎访问宙启技术站
智能推送

如何使用Java中的StringTokenizer函数来分割字符串?

发布时间:2023-06-15 11:53:05

在Java中,有一个名为StringTokenizer的类,可以将一个字符串分割成若干个子串,常用于字符串的解析、文本文件处理等场合。该类使用简单,功能也较为强大,本文将介绍如何使用Java中的StringTokenizer函数来分割字符串。

StringTokenizer类的构造函数

StringTokenizer类的构造函数可以接受三个参数:

1. String str: 要分割的字符串;

2. String delim: 分割字符串的分隔符;

3. boolean returnDelims: 是否返回分隔符本身。

其中,第一个参数是必须的,指定要分割的字符串,第二个参数是可选的,指定分割字符串的分隔符,默认情况下使用空格作为分隔符。第三个参数也是可选的,如果设置为true,则表示每个分隔符本身也要返回,否则只返回分隔符所分割的子串。

StringTokenizer类的方法

StringTokenizer类包含以下5个常用方法:

1. boolean hasMoreTokens(): 判断是否还有更多的子串可供分割,如果还有,则返回true,否则返回false;

2. String nextToken(): 返回下一个被分割的子串;

3. int countTokens(): 返回还剩下的未被分割的子串个数;

4. String nextToken(String delim): 以指定的分隔符来分割字符串,返回下一个被分割的子串;

5. boolean hasMoreElements(): 判断是否还有更多的子串可供分割,如果还有,则返回true,否则返回false;

使用步骤

使用StringTokenizer类分割字符串的步骤如下:

1. 创建StringTokenizer对象,通过构造函数来指定要分割的字符串和分隔符;

2. 使用hasMoreTokens()方法判断是否还有子串可供分割;

3. 使用nextToken()方法获取下一个被分割的子串;

4. 迭代调用hasMoreTokens()和nextToken()方法,直到没有子串可供分割为止;

5. 使用countTokens()方法返回还剩下的未被分割的子串个数。

例如,下面的代码演示了如何使用StringTokenizer类分割一个包含多个数字的字符串,并将其转换为整数数组:

String str = "1,2,3,4,5";
StringTokenizer st = new StringTokenizer(str, ",");
int[] nums = new int[st.countTokens()];
int i = 0;
while (st.hasMoreTokens()) {
    nums[i++] = Integer.parseInt(st.nextToken());
}
for (int j = 0; j < nums.length; j++) {
    System.out.print(nums[j] + " ");
}

运行结果为:1 2 3 4 5。

总结

使用Java中的StringTokenizer函数分割字符串是一种非常方便、快速的方法,它可以将一个字符串按照指定分隔符分割成若干个子串,并支持多种方法访问被分割的子串。使用时需要注意构造函数和各种方法的参数和返回值,以便正确分割字符串并获取子串。