当前位置: 首页 > news >正文

网站版权符号代码个人网站备案

网站版权符号代码,个人网站备案,本地电脑做网站,企业注册信息查询单StringTokenizer: 熟悉的分解对象,有 String 类的 split() 方法,而与它不同的是,StringTokenizer 对象是不使用正则表达式作为分隔标记的,通过本次的学习,来使用 StringTokenizer 对象进行对 String 对象的…

StringTokenizer:

        熟悉的分解对象,有 String 类的 split() 方法,而与它不同的是,StringTokenizer 对象是不使用正则表达式作为分隔标记的,通过本次的学习,来使用 StringTokenizer 对象进行对 String 对象的字符序列分解。

1、StringTokenizer的常用构造方法:

        当分析一个 String 对象的字符序列并将其分解成可被独立使用的单词(也叫语言符号)时,可以使用 java.util 包中的 StringTokenizer 类,该类有两个常用的构造方法:

  •  StringTokenizer(String s):为 String 对象 s 构造一个分析器,使用默认的分隔标记(空格、换行、回车、Tab等符号);
  •  StringTokenizer(String s, String delim):为 String 对象 s 构造一个分析器,参数 delim 的字符序列中的字符的任意排列被作为分隔标记。
StringTokenizer a = new StringTokenizer("Go All Out!");
//  分隔出三个单词:Go、All、Out!StringTokenizer a1 = new StringTokenizer("Go!_!All_!Out!","_!");
//  以"_!"的任意排列为分隔标记,分隔出三个单词:Go、All、Out

2、nextToken():获取分析器中的一个语言符号

        以一个 StringTokenizer 对象称为一个字符串分析器,一个分析器可以使用 nextToken() 方法逐个获取 String 对象的字符序列中的语言符号,每单调用 nextToken() 时,都会获取 String 对象的字符序列中的一个语言符号,每获取一个语言符号,字符串分析器中负责计数的变量的值就会自动减1,该计数变量的初始值就等于获取的语言符号的数量。

3、hasMoreToken():获取分析器中的计数变量的值

        获取语言符号时,通常采用while循环进行逐个获取,但为了控制循环,可使用  StringTokenizer 类中的 hasMoreToken() 方法,只要字符序列中还有语言符号,即计数变量的值大于0,那么该方法就会返回 true ,否则返回 false

举例:

StringTokenizer a = new StringTokenizer("Go All Out!");//  分隔出三个单词:Go、All、Out!
StringTokenizer a1 = new StringTokenizer("Go!_!All_!Out!","_!");//  以"_!"的任意排列为分隔标记,同样分隔出三个单词:Go、All、OutSystem.out.println(a.countTokens());
while (a.hasMoreTokens()){System.out.print(a.nextToken());
}System.out.println();System.out.println(a1.countTokens());
while (a1.hasMoreTokens()){System.out.print(a1.nextToken());
}

结果:

Scanner:

1、useDelimiter():正则表达式进行分隔字符序列

         当使用 Scanner 对象进行解析字符序列中的语言符号时,可以使用 useDelimiter(正则表达式) 方法将正则表达式作为分隔标记,Scanner 对象默认空白字符(空格、制表符、回车作为分隔标记来解析 String 对象的字符序列中的语言符号。

2、next():依次返回被解析的字符序列中的语言符号

  • 如果最后一个语言符号已被 next() 返回,Scanner 对象调用 hasNext() 将返回 false ,否则返回 true;
  • Scanner 对象可以调用 nextInt() 或 nextDouble() 方法来代替 next() 方法来将数字型语言符号转化为 int 或 double 型数据返回;
  • 如果获取的不是数字型语言符号,调用 nextInt() 或 nextDouble() 方法将发生 InputMismatchException 异常,处理异常时可以调用 next() 方法返回非数字语言符号。

举例:

Scanner scanner = new Scanner("Go All Out!123");
scanner.useDelimiter("[0-9! ]+");
double sum = 0;
int sum1 = 0;//  分隔出三个单词:Go、All、Out!
while (scanner.hasNext()){try {double num = scanner.nextDouble();System.out.println(num);sum += num;} catch(InputMismatchException e){System.out.println(scanner.next());sum1 ++;}}System.out.println(sum1);

结果:

StringTokenizer 与 Scanner 的区别:

        1、StringTokenizer 类把分解出的全部单词都存放到 StringTokenizer 对象的实体中,因此能较快速度的获得语言符号,即占用较多的内存(空间换取速度);

        2、Scanner 类不把单词存放到对象当中,而是仅仅存放怎么获取语言符号的分隔标记,因此 Scanner 对象获得语言符号的速度相对较慢,即节省内存空间(速度换取空间)。

http://www.yidumall.com/news/109108.html

相关文章:

  • 如何做指数交易网站ebay欧洲站网址
  • 跟业务合作做网站给多少提成东莞网站排名推广
  • 山西建设执业注册管理中心网站今日头条新闻10条简短
  • 沈阳共产党员两学一做网站semester是什么意思
  • 网页升级中每天自动更新谷歌seo推广招聘
  • 郑州网站建设招聘谷歌seo网站推广怎么做
  • 百度导航和百度地图网站推广优化外链
  • 张扬网站建设百度竞价投放
  • 吴兴区建设局网站软文广告成功案例
  • 一流的做pc端网站武汉大学人民医院光谷院区
  • 阿里云建立网站备案网络域名综合查询
  • 腾讯云如何创建网站免费seo优化
  • 黑客入侵别人网站做seo资源网站优化排名优化
  • 房产网手机版网站建设目标职业培训网
  • 房屋装饰湖南正规关键词优化
  • 电子商务网站保密协议网络舆情管理
  • 济南网站建设索q479185700实体店营销方案
  • 清博舆情系统aso优化推广公司
  • 柳州市建设工程技术服务中心seo服务加盟
  • html代码注释如何做一个网站的seo
  • c网站开发教程seo体系
  • 桂市做网站的朋友网络营销策划方案怎么做
  • 怎么做淘宝联盟网站制作客户关系管理系统
  • 包小盒设计网站官网aso排名
  • 做网站的生产方式推广计划
  • 网站图片展示源代码南昌百度快速排名提升
  • 日本做头像的网站有哪些二级域名和一级域名优化难度
  • 分享设计作品网站广州seo工资
  • 有用cc域名做网站的郑州seo外包平台
  • 高端设计网站制作seo百度首页排名业务