`
kx29126390
  • 浏览: 40303 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

Java的StringBuilder类

    博客分类:
  • JAVA
阅读更多

如果程序对附加字符串的需求很频繁,不建议使用+来进行字符串的串联。可以考虑使用java.lang.StringBuilder 类,使用这个类所产生的对象默认会有16个字符的长度,您也可以自行指定初始长度。如果附加的字符超出可容纳的长度,则StringBuilder 对象会自动增加长度以容纳被附加的字符。如果有频繁作字符串附加的需求,使用StringBuilder 类能使效率大大提高。如下代码:

Java代码 
public   class  AppendStringTest  
{  
     public   static   void  main(String[] args)  
            {  
                   String text = "" ;  
                 
                   long  beginTime = System.currentTimeMillis();  
                   for ( int  i= 0 ;i< 10000 ;i++)  
                         text = text + i;  
                   long  endTime = System.currentTimeMillis();  
                   System.out.println("执行时间:" +(endTime-beginTime));  
  
                   StringBuilder  sb = new  StringBuilder ( "" );  
                   beginTime = System.currentTimeMillis();  
                   for ( int  i= 0 ;i< 10000 ;i++)  
                          sb.append(String.valueOf(i));  
                   endTime = System.currentTimeMillis();  
                   System.out.println("执行时间:" +(endTime-beginTime));  
  
            }  
}  
public class AppendStringTest
{
     public static void main(String[] args)
            {
                   String text = "";
              
                   long beginTime = System.currentTimeMillis();
                   for(int i=0;i<10000;i++)
                         text = text + i;
                   long endTime = System.currentTimeMillis();
                   System.out.println("执行时间:"+(endTime-beginTime));

                   StringBuilder

 sb = new StringBuilder

("");
                   beginTime = System.currentTimeMillis();
                   for(int i=0;i<10000;i++)
                          sb.append(String.valueOf(i));
                   endTime = System.currentTimeMillis();
                   System.out.println("执行时间:"+(endTime-beginTime));

            }
} 此段代码输出:

 执行时间:3188
 执行时间:15

 StringBuilder 是j2se1.5.0才新增的类,在此之前的版本若有相同的需求,则使用java.util.StringBuffer。事实上StringBuilder 被设计为与StringBuffer具有相同的操作接口。在单机非线程(MultiThread)的情况下使用StringBuilder 会有较好的效率,因为StringBuilder 没有处理同步的问题。StringBuffer则会处理同步问题,如果StringBuilder 会有多线程下被操作,则要改用StringBuffer,让对象自行管理同步问题。


转载:http://blog.csdn.net/gnuhpc/archive/2009/08/16/4452784.aspx

分享到:
评论

相关推荐

    Java StringBuilder类原理及常用方法

    Java StringBuilder类原理及常用方法 Java StringBuilder类是一种可变字符序列, 它是一个字符串缓冲区,可以通过某些方法调用改变该序列的长度和内容。StringBuilder内部拥有一个数组用来存放字符串内容,进行字符...

    Java StringBuilder类相关知识总结

    Java StringBuilder类相关知识总结 Java StringBuilder类是一个可变的字符串对象,用于高效地处理字符串操作。下面是Java StringBuilder类的相关知识总结: 1. 构造方法: Java StringBuilder类提供了两种构造...

    java StringBuilder类的详解及简单实例

    Java StringBuilder类详解及简单实例 Java StringBuilder类是Java语言中的一种字符串操作类,它提供了多种字符串操作方法,如追加、插入、替换、删除等。下面将详细介绍Java StringBuilder类的详解及简单实例。 一...

    Java StringBuilder

    Java中的`StringBuilder`类是处理字符串的一个重要工具,特别是在需要频繁进行字符串操作的场景下,它的性能优于传统的`String`类。这是因为`String`在Java中是不可变对象,每次修改都会创建一个新的字符串实例,而`...

    java中stringBuilder的用法

    stringbuilder用法 java中stringBuilder的用法java中stringBuilder的用法java中stringBuilder的用法java中stringBuilder的用法java中stringBuilder的用法java中stringBuilder的用法java中stringBuilder的用法java中...

    java StringBuilder详解

    在Java编程语言中,`StringBuilder`类是字符串操作的一个重要工具,尤其在处理大量字符串拼接时,它的效率远高于`String`类。本篇文章将深入解析`StringBuilder`的使用方法、内部机制以及与`StringBuffer`的区别。 ...

    java中stringBuilder的用法.pdf

    - StringBuilder类提供了多个构造函数,可以无参创建一个空的StringBuilder对象,也可以根据传入的初始字符串内容来初始化一个StringBuilder对象。例如:`StringBuilder sb = new StringBuilder("HelloWorld!");` ...

    Java的StringBuilder类.pdf

    Java的StringBuilder类是Java语言中用于处理字符串的一个重要工具,特别是在构建或修改字符串时,它提供了高效的性能。与String类不同,StringBuilder是一个可变的对象,这意味着我们可以在已有的字符串基础上进行...

    类似java的StringBuilder的动态字符串

    刚从java转过来感觉c的字符串操作太麻烦了所以自己写了一个类似java的StringBuilder类的头文件 它支持java的StringBuilder支持的很多操作大大方便了对字符串的操作 能力所限如有bug请指出&lt;/h1&gt;

    StringBuilder类

    StringBuilder类是Java编程语言中用于处理字符串的一个重要工具,尤其在需要进行大量字符串操作或者需要优化性能的场景下,StringBuilder扮演着不可或缺的角色。与String不同,String对象的长度是固定的,一旦创建,...

    java重点之StringBuilder讲解

    这是java学习中,总结出来的关于StringBuilder的一些内容,供学习参考。

    面试题java StringBuffer和StringBuilder类常见操作和用法

    在Java编程语言中,StringBuffer和StringBuilder类是处理可变字符串序列的重要工具。它们提供了丰富的功能,如添加、插入、删除、替换字符,以及反转字符串序列等。由于这两个类的特性,它们在处理大量字符串操作时...

    java中stringBuilder的用法详解

    StringBuilder 是 Java 中的一个非常有用的类,主要用于字符串的操作和修改。通过使用 StringBuilder,可以减少字符串的创建和销毁,从而提高性能。同时,StringBuilder 还提供了许多有用的方法,例如 Append、...

    stringbuilder用法 java中StringBuilder的⽤法

    在Java编程中,`StringBuilder`类是用来处理字符串的可变对象,相较于`String`类,它的主要优势在于能够在不创建新对象的情况下对字符串进行修改,从而提高了性能,尤其是在需要进行大量字符串操作,如循环连接字符...

    JavaSE之StringBuilder类与String类

    ### JavaSE之StringBuilder类与String类 #### 一、String类概述 在Java语言中,`String`类是非常重要的一个类,它代表了不可变的字符序列,即一旦创建了一个`String`对象,其内容就不能被修改。由于`String`类的不...

    String StringBuffer和StringBuilder区别之源码解析

    StringBuilder类是Java中第三种字符串类,它的字符串可以被修改。StringBuilder类不是线程安全的,因为它的方法中没有加synchronized关键字。这使得StringBuilder类的执行效率高于StringBuffer类。 在StringBuilder...

    十进制转二进制.docx

    十进制转二进制java实现 标题解释 十进制转二进制是指将十进制...同时,本文档还介绍了相关的知识点,包括十进制数和二进制数、Java Scanner类、Java StringBuilder类、Java方法、While循环和System.out.println方法。

    StringBuffer 和 StringBuilder 类

    《Java中的StringBuffer与StringBuilder类详解》 在Java编程中,当我们需要对字符串进行多次修改时,StringBuffer和StringBuilder类成为首选。这两个类提供了一种高效且灵活的方式来处理字符串,与不可变的String类...

    Java-Java String和StringBuilder

    在Java编程语言中,String和StringBuilder是两个非常重要的类,它们在处理文本字符串时起着核心作用。了解这两个类的特点和使用场景对于提高程序性能至关重要。 首先,`String`类在Java中是不可变的,这意味着一旦...

    Object类&Date类&Calender类&StringBuilder类1

    StringBuilder 类和 String 类都是 Java 中的字符串类,但是它们有着很大的不同。String 类的对象内容不可改变,所以每当进行字符串拼接时,总是会在内存中创建一个新的对象,所以经常改变内容的字符串最好不要用 ...

Global site tag (gtag.js) - Google Analytics