之前遇到到数字中有逗号处理为数字的代码
// java中价格的数字中间有逗号的处理
@Test
public void test1() {
java.util.StringTokenizer st = new StringTokenizer( "123,456,789", ",");
StringBuffer sb = new StringBuffer();
while(st.hasMoreTokens()) {
sb.append(st.nextToken());
}
System.out.println(sb); //123456789
}
StringTokenizer是一个用来分隔String的应用类,相当split函数。
1.构造函数
StringTokenizer 只有三个构造方法
1).StringTokenizer(String str) :被分割对象str,分隔符采取默认分割,java默认的分隔符是“空格”、“制表符(‘\t’)”、“换行符(‘\n’)”、“回车符(‘\r’)”。默认的话,所有的分隔符都会同时起作用。
2).StringTokenizer(String str, String delim) :分隔符不采用默认,提供一个指定的分隔符。
3).StringTokenizer(String str, String delim, boolean returnDelims) :指定一个特定的分隔符,同时,指定是否返回分隔符。如果是true,分隔符将被作为一个token返回。
2.核心方法
1).public boolean hasMoreTokens():判断当前还有没有可以遍历的元素.(boolean hasMoreElements()一般不用)
2).public String nextToken():用来获得当前的元素token。(Object nextElement()一般不用)
3).public String nextToken(String delim):返回当前索引开始,指定分隔符的下一个token。实际返回的是索引当前位置到下一个delim出现为止所有的字符
4).public int countTokens():返回当前可以被访问的元素的个数
@Test
public void test() {
StringTokenizer test = new StringTokenizer("J-PHONE,Vodafone,SoftBank",",");
while(test.hasMoreTokens()){
System.out.println("count0-->"+test.countTokens());
System.out.println("carry-->"+test.nextToken());
System.out.println("count1-->"+test.countTokens() + "\n");
// System.out.println(" " + test.nextToken("*"));
}
}
count0-->3 carry-->J-PHONE count1-->2 count0-->2 carry-->Vodafone count1-->1 count0-->1 carry-->SoftBank count1-->0 |