`
zhuobinzhou
  • 浏览: 136616 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类

StringBuilder示例

阅读更多

一个String对象的长度是固定 的,不能更改其内容。当你用“+”连接两个字符串从而创建新的字符串时,你其实创建了一个新的String对象。如果频繁的这样子操作,就会产生大量的垃圾并且效率低。

这种情况下可以考虑使用StringBuilder。

 

/*
 * 作者:阳光的味道
 * 功能:示范String类的对象的intern()方法
 * 日期:2010/11/07
 * */

public class AppedStringTest {
	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("String的执行时间:" + (endTime - beginTime));
		
		StringBuilder builder = new StringBuilder();
		beginTime = System.currentTimeMillis();
		for(int i = 0 ; i < 10000 ; i ++){
			builder.append(i);
		}
		endTime = System.currentTimeMillis();
		
		System.out.println("StringBuilder执行时间:" + (endTime - beginTime));
	}

}
/*
 * out:
 * String的执行时间:420
   StringBuilder执行时间:3*/

 

 

StringBuilder是jdk5.0中新增的类,在之前使用的是java.lang.String.Buffer。事实上,StingBuilder被设计为与StringBuffer具有相同操作的接口。在单机非多线程的情况下使用StringBuilder会有较高的效率,这是因为StringBuilder没有处理同步(Synchronized)问题。而StringBuffer则会处理同步问题,其在多线程中应用较多。

分享到:
评论

相关推荐

    StringBuilder拓展方法示例源码2012530

    StringBuilder拓展方法示例源码 项目描述 源码演示了手动给StringBuilder添加拓展方法IndexOf string的一些方法StringBuilder没有,我们可以灵活的给他 拓展一下。把自己需要的方法添加上。以后在项目里直接引用一下...

    ajax string StringBuilder理论和示例

    StringBuilder类在.NET框架中扮演着重要的角色,特别是在大量字符串操作时提高性能。以下是对这些概念的详细解释: **Ajax(异步JavaScript和XML)** Ajax的核心在于能够在不刷新整个页面的情况下与服务器交换数据...

    stringBuilder完整版.pdf

    通过用一个重载的构造函数方法初始化变量,可以创建 StringBuilder 类的新实例,正如以下示例中所阐释的那样。 设置容量和长度 虽然 StringBuilder 对象是动态对象,允许扩充它所封装的字符串中字符的数量,但是您...

    java.StringBuilder(处理方案示例).md

    java.StringBuilder(处理方案示例).md

    07 StringBuilder

    #### 五、示例代码 下面是一个简单的例子,展示了如何使用`StringBuilder`: ```java public class StringBuilderExample { public static void main(String[] args) { StringBuilder sb = new StringBuilder(...

    C#源代码-使用StringBuilder来拼接HTML中的Table表格.zip

    本资源提供的"C#源代码-使用StringBuilder来拼接HTML中的Table表格"就是一个关于如何高效地构建HTML表格的示例。StringBuilder类在C#中用于字符串操作,特别是在需要频繁进行字符串拼接的情况下,它比使用"+"或...

    String和StringBuilder类的区别

    以下是一些示例代码,用于演示如何使用 `String` 和 `StringBuilder` 类: ```csharp // 使用 String 进行字符串拼接 string str1 = "Hello"; string str2 = "World"; string result1 = str1 + " " + str2; // ...

    C++实现StringBuilder的例子

    以下是一个简单的`StringBuilder`实现示例: ```cpp #include #include class StringBuilder { public: // 构造函数,初始化容量 StringBuilder(size_t initialCapacity = 16) : capacity(initialCapacity), ...

    sql语句转 StringBuilder buffer

    - 以下是一个简单的示例,展示了如何使用`StringBuilder`构建SQL查询: ```java StringBuilder sql = new StringBuilder(); sql.append("SELECT "); sql.append("column1, column2"); sql.append(" FROM "); ...

    测试stringbuilder运行效率示例

    StringBuilder的运行效率测试示例 在本示例中,我们将测试 StringBuilder 的运行效率,并与 string 进行比较,以便更好地理解它们之间的差异。 StringBuilder 的概述 StringBuilder 是一个可变的字符串对象,它...

    C#中的StringBuilder的使用

    在C#编程语言中,`StringBuilder`类是一个非常重要的工具,尤其当涉及到字符串操作时,其性能优势相较于传统的`string`类型更为显著。本文将深入探讨`StringBuilder`的使用方法,包括其初始化、扩容机制以及主要的...

    Sql Into StringBuilder

    4. **使用示例**: ```csharp StringBuilder sql = new StringBuilder(); sql.Append("SELECT * FROM Customers WHERE "); if (!string.IsNullOrEmpty(name)) sql.Append("Name = @name AND "); if (age &gt; 0) ...

    winform 使用StringBuilder源码

    这篇资源可能是提供了一些关于在WinForm应用中如何有效利用StringBuilder类的源代码示例。 StringBuilder类是System.Text命名空间的一部分,它是String类的一个替代,当需要频繁地添加、删除或修改字符串时,...

    Java StringBuffer & StringBuilder.pdf

    **三、StringBuilder的示例** 与 `StringBuffer` 类似,`StringBuilder` 的用法也包括 `append()`、`insert()`、`deleteCharAt()` 和 `reverse()` 方法。 **四、为什么StringBuffer和StringBuilder更适合在循环中...

    java中stringBuilder的用法.pdf

    此示例将在控制台上显示"The value is: $25.00"。`Insert` 方法允许您在现有字符串的特定位置插入文本或对象。以下代码在已有的StringBuilder对象的中间插入一个字符串: StringBuilder MyStringBuilder = new ...

    StringBuilder用法

    通过用一个重载的构造函数方法初始化变量,可以创建 StringBuilder 类的新实例,正如以下示例中所阐释的那样。 [C#] StringBuilder MyStringBuilder = new StringBuilder("Hello World!"); 设置容量和长度 虽然 ...

    跟我学Java-day13-String和StringBuilder.pdf

    day13-String和StringBuilder 1.String类 1.1字符串的比较【理解】 1.1.1==号的作用 比较基本数据类型:比较的是具体的值 比较引用数据类型:比较的是对象地址值 1.1.2equals方法的作用 方法介绍 示例代码 ...

    C#源代码-StringBuilder.zip

    这个"C#源代码-StringBuilder.zip"压缩包很可能是包含了关于`StringBuilder`类的一些示例代码或者实现,帮助我们更深入地理解如何有效地使用这个类。 `StringBuilder`类位于`System.Text`命名空间下,它是线程安全...

Global site tag (gtag.js) - Google Analytics