`
charice59
  • 浏览: 9640 次
  • 性别: Icon_minigender_1
  • 来自: 成都
最近访客 更多访客>>
社区版块
存档分类
最新评论

java中String、StringBuffer和StringBuilder的差异

 
阅读更多

在Java面试中,被问到这3个类的差异,一时迷糊没记起来。回来查了下api,比较如下:

String是不可变的字符串序列,每次字符串变更的时候,其实都是创建新的对象。

     String str = "abc";
 

is equivalent to:

     char data[] = {'a', 'b', 'c'};
     String str = new String(data);
 

StringBuffer是可变的字符串序列,并且是线程安全的,在多线程中使用时,会sychronized。

StringBuilder也是可变的字符串序列,但不是线程安全的,一般被用在单线程中。

分享到:
评论

相关推荐

    String ,StringBuffer与StringBuilder

    在 Java 中,String, StringBuffer 和 StringBuilder 三个类都是用于字符操作的,但它们之间有着很大的区别。 首先,String 是不可变类,意味着一旦创建了 String 对象,就不能修改它的值。每次对 String 对象的...

    String及StringBuffer和StringBuilder的区别

    String、StringBuffer 和 StringBuilder 是 Java 语言中三种不同类型的字符串处理方式,它们之间存在着明显的性能和线程安全性差异。 String String 类型是不可变的对象,每次对 String 对象进行改变时都会生成一...

    String、StringBuffer、StringBuilder的使用方法

    在Java编程语言中,`String`、`StringBuffer`和`StringBuilder`是处理字符串的三个重要类,它们各自有特定的使用场景和优缺点。理解它们的差异对于编写高效的代码至关重要。 **String类** `String`是不可变的类,...

    String-StringBuffer-StringBuilder

    在Java编程语言中,`String`、`StringBuffer`和`StringBuilder`都是用来处理字符串的类,但它们之间存在显著的差异,主要体现在性能、线程安全性和使用场景上。 首先,`String`是最基本的字符串类,它代表的是不可...

    String、StringBuilder和StringBuffer的区别

    在Java编程语言中,String、StringBuilder和StringBuffer都是用来处理字符串的类,它们之间存在一些重要的区别,主要涉及到性能和线程安全性。 首先,`String`类代表的是字符串常量,一旦创建,其内容就不能改变。...

    浅谈java中String StringBuffer StringBuilder的区别

    在Java编程语言中,String、StringBuffer和StringBuilder都是用来处理字符串的类,但它们之间存在显著的性能和功能差异。下面我们将深入探讨这三个类的区别。 首先,`String`类是Java中最基本的字符串类型,它表示...

    Java中String、StringBuffer、StringBuilder的区别详解

    Java中的字符串处理是编程中常见的任务,涉及到三个关键类:String、StringBuffer和StringBuilder。它们在功能上相似,但有着重要的区别,主要体现在字符串的可变性、线程安全性和性能方面。 1. 可变性 - String类...

    StringBuffer 和 StringBuilder 类

    在Java编程中,当我们需要对字符串进行多次修改时,StringBuffer和StringBuilder类成为首选。这两个类提供了一种高效且灵活的方式来处理字符串,与不可变的String类相比,它们能避免创建大量未使用的对象,从而提高...

    Java中StringBuffer和StringBuilder_动力节点Java学院整理

    以下是一个简单的性能测试,展示了在不同操作中`String`、`StringBuffer`和`StringBuilder`的性能差异: ```java public class StringTest { public static String BASEINFO = "Mr.Y"; public static final int ...

    第5讲 String、StringBuffer、StringBuilder有什么区别1

    在Java中,我们有三种主要的字符串类:String、StringBuffer和StringBuilder,它们各自具有不同的特性和适用场景。 首先,`String`类是Java中的一个基础且不可变的类,被声明为`final`,其内部属性也是`final`的。...

    StringBuffer、StringBuilder、String

    在Java中,有几种不同的方式可以用来创建和修改字符串,其中最常用的是`String`、`StringBuffer`和`StringBuilder`。本文将详细介绍这三种类型的字符串及其区别,特别是`StringBuffer`和`StringBuilder`之间的差异。...

    Java String、StringBuffer与StringBuilder的区别

    Java中的String、StringBuffer和StringBuilder都是用来处理字符串的类,但在使用场景和性能上有显著区别。下面我们将详细探讨这三个类的特性和差异。 1. **String类** - **不可变性**:String对象一旦创建,其内容...

    深入剖析java中String、StringBuffer、StringBuilder的区别

    Java中的String、StringBuffer和StringBuilder类都是用于处理字符串的,但它们之间存在显著的区别,主要体现在字符串的可变性、线程安全性和性能优化上。 首先,关于**可变性**,String类是不可变的。这意味着一旦...

    从内存方面解释Java中String与StringBuilder的性能差异.docx

    在Java编程中,String与StringBuilder都是用来处理字符串的类,但它们在性能上有显著的差异,这主要体现在内存管理和操作效率上。理解这些差异对于优化代码性能至关重要。 首先,String对象在Java中是不可变的,这...

    Java之String、StringBuffer、StringBuilder的区别分析

    Java中的String、StringBuffer和StringBuilder都是用来处理字符串的类,但在不同的场景下,它们的使用方式和性能表现有所差异。 首先,String是最基础的字符串类,它的特点是不可变性。这意味着一旦创建了一个...

    Java String、StringBuffer、StringBuilder(基于源码探索)

    `String`、`StringBuffer`和`StringBuilder`都是用于构建和操作字符串的类,但它们之间存在重要的差异。这些差异主要体现在对象的不可变性、线程安全性和性能方面。 首先,`String`类是最基础的字符串类,它的特点...

    JavaString、StringBuffer、StringBuildermd,学习代码

    在Java编程语言中,`String`、`StringBuffer`和`StringBuilder`是处理字符串的三个重要类,它们各自有特定的使用场景和性能差异。理解这些类的特点对于编写高效的Java代码至关重要。 首先,`String`类是不可变的,...

    Java中StringBuffer和StringBuilder区别

    在Java编程语言中,`StringBuffer` 和 `StringBuilder` 都是用来处理字符串连接操作的类,它们在处理大量字符串拼接时比简单的 `+` 操作更为高效。这两个类的主要区别在于线程安全性和性能: 1. **线程安全性**: ...

    string和StringBuffer的区别

    在Java编程语言中,`String`和`StringBuffer`都是用来表示和操作字符串的重要类,但它们在使用场景和性能上有显著的区别。了解这些差异对于编写高效、优化的代码至关重要。 首先,`String`类是不可变的。这意味着...

Global site tag (gtag.js) - Google Analytics