大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
- StringTokenizer类:解析字符串单词
和split方法不同的是,StringTokenizer对象不使用正则表达式做分隔标记
有时候要分析字符串并将字符串分解成可独立使用的单词,这些单词称为语言符号。对于字符串“I am student”,如果把空格作为该字符串的标记,那么该字符串有三个单词(语言符号)。对于字符串“I,am, student”,如果把逗号作为该字符串的标记,那么该字符串有三个单词(语言符号)。
当分析一个字符串并将字符串分解成可独立使用的单词时,可以使用java.util包中的StringTokenizer类,该类有两个常用的构造方法
- StringTokenizer(String s):
为字符串s构造一个分析器,使用默认的分隔标记,即空格符(多个空格被看做一个空格),换行符,回车符,Tab符,进制符
- StringTokenizer(String s,String delim):
为字符串s构造一个分析器,使用参数dilim中的字符的任意组合作为分隔标记。
如:
StringTokenizer s=new StringTokenizer(“we,are;student” , ”,;”);
注意:分隔标记的任意组合仍然是分隔标记
一个StringTokenizer对象称为一个字符串分析器,字符串分析器使用nextToken()方法逐个获取字符串中的语言符号(单词),每当调用nextToken()时,都将在字符串中获得下一个语言符号,每当获得一个语言符号时,字符串分析器负责计数的变量的值就自动减一,该计数变量的初始值等于字符串中的单词数目
通常用while循环逐个获取语言符号,为了控制循环,可以使用StringTokenizer类中的hasMoreTokens()方法,只要字符串中还有语言符号,即计数变量的值大于0,该方法就返回true,否则就false.
另外还可以随时让分析器调用countTokens()方法得到分析器中计数变量的值
import java.util.StringTokenizer;
public class p1 {
public static void main(String args[]) {
String s="市话费:28.89元,长途话费:128.87元,上网费:298元。";
String delim="市话长途上网费元:,。";
StringTokenizer fenxi=new StringTokenizer(s,delim);//用delim中的字符的任意组合作为分隔标记
double total=0;
while (fenxi.hasMoreTokens()){
double money=Double.parseDouble(fenxi.nextToken());
//数字组成的字符串,转化成double类型,再赋值给money
System.out.println(money);
total=total+money;
}
System.out.println(total);
}
}
28.89
128.87
298.0
455.76
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/191781.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...