public String[] split(String regex, int limit) {
}
1,首先spilt是个方法,参数regex是正则表达式,参数limit指的是最多分割成多少个字符串
返回值是一个字符串数组,想要结果只需要遍历这个数组即可。
String ip="192.168.3.4";
String []spilt=ip.split("\\.");
for(int i=0;i<spilt.length;i++){
System.out.println(spilt[i]);
}
注:1,spilt分割字符串的时候,如果分隔符是特殊字符,则需要加上转义字符‘\’,例如”.”,”+”,”|”;
2, 如果是多个种类的分隔符,则用“|”隔开;
3,spilt是使用正则表达式匹配规则来分割字符串的。
2,StringTokenizer是个类,class StringTokenizer implements Enumeration
public StringTokenizer(String str, String delim, boolean returnDelims) {
}//字符串,分隔符,是否返回分隔符
public StringTokenizer(String str, String delim) {
this(str, delim, false);
}//字符串,分隔符,不返回分隔符
public StringTokenizer(String str) {
this(str, " \t\n\r\f", false);
}//字符串,分割符" \t\n\r\f",不返回分隔符
注:1,以上是三个构造函数,常用的第三个,因为我们的分隔符多数情况是空格,也不需要返回分隔符,所以第三个够咱们使用了。
2,当分割符是特殊字符的时候,StringTokenizer是不需要转义字符的,因为它不是依赖于正则表达式,所以在性能上肯定是StringTokenizer好于spilt()。
废话不说,直接上样例:
String ip="192.168.3.4";
StringTokenizer st=new StringTokenizer(ip,".");
while(st.hasMoreElements()){//判断是否还有分割字符串
System.out.println(st.nextElement());//返回分割字符段
}
StringTokenizer st=new StringTokenizer(ip,".",true);
while(st.hasMoreElements()){
System.out.println(st.nextElement());
}
最后推荐各位使用spilt,因为这个StringTokenizer也算是上古留下来的,不知道啥时候就没了。。