Java 实例 - 字符串分隔(StringTokenizer)
Java 中我们可以使用 StringTokennizer 设置不同分隔符来分隔字符串,默认的分隔符是:空格、制表符(\t)、换行符(\n)、回车符(\r)。
以下实例演示了 StringTokennizer 使用空格和等号来分隔字符串:
更多 StringTokennizer 介绍可以查看:Java StringTokenizer 类使用方法
JavaStringSplitEmp.java 文件
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) {
String str = "This is String , split by StringTokenizer, created by runoob";
StringTokenizer st = new StringTokenizer(str);
System.out.println("----- 通过空格分隔 ------");
while (st.hasMoreElements()) {
System.out.println(st.nextElement());
}
System.out.println("----- 通过逗号分隔 ------");
StringTokenizer st2 = new StringTokenizer(str, ",");
while (st2.hasMoreElements()) {
System.out.println(st2.nextElement());
}
}
}
输出结果:
----- 通过空格分隔 ------ This is String , split by StringTokenizer, created by runoob ----- 通过逗号分隔 ------ This is String split by StringTokenizer created by runoob
Java 实例
Krilium
kri***m@163.com
import java.util.StringTokenizer; public class Main { public static void main(String[] args) { String str1 = "Hello"; //字符串分割 System.out.println("字符串使用 split 分割"); System.out.print("将 Hello 从字符串 ll 处分割:"); for(String temp:str1.split("ll")){ System.out.print(temp+" "); } System.out.println(); System.out.println("------------------------------------"); System.out.println("字符串使用 StringTokenizer 类进行分割");//实验心得 StringTokenizer 不保留空集 StringTokenizer s = new StringTokenizer(str1, "l"); System.out.print("将 Hello 从字符 l 处分割:"); while(s.hasMoreElements()){ System.out.print(s.nextElement()+" "); } System.out.println(); } }执行以上代码,输出结果为:
与 split 按照 ll 分割的结果相同,所以 StringTokenizer 类分割后的结果不保留空集。
Krilium
kri***m@163.com
sunow_yang
360***740@qq.com
StringTokenizer和split方法还有一个很重要的区别就是:前者会以给定分割字符串的每个字符进行分割,而后者是以整个字符串进行切割。借鉴上面的代码:
import java.util.StringTokenizer; public class Main { public static void main(String[] args) { String str = "Hello,this is a test"; System.out.println("使用split分割str"); System.out.print("将str从字符串 el 处分割:"); for(String temp:str.split("el")){ System.out.print(temp+" "); } System.out.println(); System.out.println("------------------------------------"); System.out.println("使用StringTokenizer类进行分割"); StringTokenizer s = new StringTokenizer(str, "el"); System.out.print("将str从字符e和l处分割:"); while(s.hasMoreElements()){ System.out.print(s.nextElement()+" "); } System.out.println(); } }执行代码,结果如下:
所以,基于这样的原理,StringTokenizer中的分割字符串一般是不重复的字符,例如:“aa”。
sunow_yang
360***740@qq.com