JAVA StringBuffer类与StringTokenizer类代码解析

 更新时间:2018年01月06日 09:32:17   作者:sac761  
这篇文章主要介绍了JAVA StringBuffer类与StringTokenizer类代码解析,具有一定借鉴价值,需要的朋友可以参考下

 StringBuffer类提供了一个字符串的可变序列,类似于String类,但它对存储的字符序列可以任意修改,使用起来比String类灵活得多。它常用的构造函数为:

StringBuffer()

构造一个空StringBuffer对象,初始容量为16个字符。

StringBuffer(Stringstr)

构造一个StringBuffer对象,初始内容为字符串str的拷贝。

对于StringBuffer类,除了String类中常用的像长度、字符串截取、字符串检索的方法可以使用之外,还有两个较为方便的方法系列,即append方法系列和insert方法系列。

(1)append方法系列根据参数的数据类型在StringBuffer对象的末尾直接进行数据添加。

public StringBuffer append(boolean b)
public StringBuffer append(char c)
public StringBuffer append(char[] str)
public StringBuffer append(char[] str, int offset, int len)
public StringBuffer append(double d)
public StringBuffer append(float f)
public StringBuffer append(int i)
public StringBuffer append(long l)
public StringBuffer append(Object obj)
public StringBuffer append(String str)
public StringBuffer append(StringBuffer sb)

(2) insert方法系列根据参数的数据类型在StringBuffer的offset位置进行数据插入。

public StringBuffer insert(int offset, boolean b)
public StringBuffer insert(int offset, char c)
public StringBuffer insert(int offset, char[] str)
public StringBuffer insert(int index, char[] str, int offset, int len)
public StringBuffer insert(int offset, double d)
public StringBuffer insert(int offset, float f)
public StringBuffer insert(int offset, int i)
public StringBuffer insert(int offset, long l)
public StringBuffer insert(int offset, Object obj)
public StringBuffer insert(int offset, String str)

(3) 下面这个方法用于将stringbuffer对象的数据转换成字符串:

public String toString()

【例3.12】基于例3.11进行修改,使用StringBuffer对象得到如图3.10所示的输出界面。

//程序文件名为TestString.java 
public class TestString 
{ 
  public static void main(String[] args) 
  { 
  StringBuffer str = new StringBuffer("The substring begins at the specified beginIndex."); 
  StringBuffer str1 = new StringBuffer("string"); 
  String str2 = new String(); 
  int size = str.length(); 
  int flag = str.indexOf("substring"); 
  str2 = str.substring(flag,flag + 9); 
  StringBuffer strOut = new StringBuffer("字符串"); 
  strOut.append(str); 
  strOut.append("总长度为:");    
  strOut.append(size); 
  int f = strOut.indexOf("总"); 
  strOut.insert(f,'\n'); 
  System.out.println(strOut.toString());  
  if(str1.toString().equals(str2)) 
     System.out.println("截取的字符串为:" + str1.toString()); 
  else 
     System.out.println("截取的字符串为:" + str2); 
    } 
} 

StringTokenizer(Stringstr,Stringdelim)  

使用delim分隔符,以初始字符串str构建StringTokenizer对象。  

intcountTokens()  

返回识别的总记号数。  

booleanhasMoreTokens()  

测试是否还有识别的记号。  

booleannextToken(Stringdelim)  

返回字符串delim分隔的下一个记号。  

StringnextToken()  

返回下一个识别的记号。  

import java.util.*; 
 
public class UseToken  
{ 
  public static void main(String[] args)  
  { 
    String str = "数学::英语::语文::化学"; 
    StringTokenizer st = new StringTokenizer(str,"::"); 
    System.out.println(str + "\n课程数为:" +st.countTokens()); 
  while (st.hasMoreTokens())  
  { 
  System.out.println(st.nextToken("::")); 
  } 
  str = "Hello this is a test"; 
  st = new StringTokenizer(str); 
  System.out.println(str + "\n单词数为:" +st.countTokens()); 
  while (st.hasMoreTokens())  
  { 
    System.out.println(st.nextToken()); 
      } 
   } 
} 

总结

以上就是本文关于JAVA StringBuffer类与StringTokenizer类代码解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

  • mybatis collection和association的区别解析

    mybatis collection和association的区别解析

    这篇文章主要介绍了mybatis collection解析以及和association的区别,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Spring Mvc中传递参数方法之url/requestMapping详解

    Spring Mvc中传递参数方法之url/requestMapping详解

    在开发中,参数传递是必不可少的一个功能,下面这篇文章主要给大家介绍了关于Spring Mvc中传递参数方法之url/requestMapping的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-07-07
  • Java使用easyExcel批量导入数据详解

    Java使用easyExcel批量导入数据详解

    这篇文章主要介绍了Java使用easyExcel批量导入数据详解,通常我们会提供一个模板,此模块我们可以使用easyExcel导出数据生成的一个Excel文件当作模板,提供下载链接,用户在该文件内填入规定的数据格式以后可以批量导入数据到数据库中,需要的朋友可以参考下
    2023-08-08
  • idea中创建maven的Javaweb工程并进行配置(图文教程)

    idea中创建maven的Javaweb工程并进行配置(图文教程)

    这篇文章主要介绍了idea中创建maven的Javaweb工程并进行配置,本文通过图文并茂的形式给大家介绍的非常详细,文中给大家提到了tomcat的运行方法,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • springboot redis分布式锁代码实例

    springboot redis分布式锁代码实例

    这篇文章主要介绍了springboot redis分布式锁代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • SpringCloud超详细讲解微服务网关Zuul

    SpringCloud超详细讲解微服务网关Zuul

    这篇文章主要介绍了SpringCloud Zuul微服务网关,负载均衡,熔断和限流,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Java 设计模式原则之迪米特法则详解

    Java 设计模式原则之迪米特法则详解

    这篇文章主要介绍了Java 设计模式原则之迪米特法则详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • SpringBoot使用spring.config.import多种方式导入配置文件

    SpringBoot使用spring.config.import多种方式导入配置文件

    本文主要介绍了SpringBoot使用spring.config.import多种方式导入配置文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • springboot+dubbo+zookeeper的简单实例详解

    springboot+dubbo+zookeeper的简单实例详解

    本文主要介绍了springboot+dubbo+zookeeper的简单实例,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • 利用JavaFX工具构建Reactive系统

    利用JavaFX工具构建Reactive系统

    这篇文章主要介绍了使用JavaFX构建Reactive系统,利用JavaFX工具集中的新的超棒特性来构建响应式的快速应用程序,感兴趣的小伙伴们可以参考一下
    2016-02-02

最新评论