`
night_lone
  • 浏览: 63365 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

String 与StringBuffer的关键点

    博客分类:
  • J2SE
 
阅读更多

StringBuffer关键点:

   1.简单认为.append()效率好于“+"是错误的。

    2.不要使用new创建String。

   3。注意.intern()的使用。

   4.在编译期能够确定字符串值的情况下,使用”+“效率最高。

   5.避免使用”+=“来构造字符串

   6.在声明StringBuffer对象的时候,指定合适的capacity,不要使用默认值16.

   7,注意以下二者的区别,后者开辟了两个内存段。

             String s="a"+"b";

             String s="a";

                       s+="b";

 

String是一个支持非可变性的类,这种类的特点是状态固定(不存在任何改变对象的方法 )。从而是线程安全的。

   所以当执行tmp+="x"的时候,实际上是另外创建了一个对象,而tmp原来指向的那个对象 就成了垃圾,这样的话一个循环就会产生n个对象,从而造成内存的浪费。

分享到:
评论

相关推荐

    java面试笔试题String 和StringBuffer的区别

    在Java编程语言中,`String`与`StringBuffer`是两个重要的字符串处理类,它们各自具有独特的特性和用途,尤其在面试或笔试中常被提及作为考察应聘者对Java基础知识掌握程度的重要知识点。 ### `String`类:不可变性...

    面试的经典程序(String,StringBuffer,list,Connections)

    本篇文章将深入探讨标题和描述中提及的关键知识点,包括`String`、`StringBuffer`、数组、集合容器(如`List`)以及并发处理中的`Connections`。 首先,我们来关注`String`类。在Java中,`String`是不可变的对象,...

    StringBuffer

    与`String`不同的是,`StringBuffer`的对象可以被修改,这意味着它们是可变的。这使得`StringBuffer`非常适合于执行诸如字符串拼接、插入、删除等操作,尤其是在多线程环境中,它的同步特性保证了线程安全。 #### ...

    Java中String、StringBuffer、StringBuilder的区别介绍

    在Java编程语言中,String、StringBuffer和StringBuilder都是用来处理字符串的重要类,它们各自具有不同的特性和使用场景。以下是对这三个类的区别进行的详细解析: 1. 可变与不可变 - String:String对象是不可变...

    正确使用String类的几点注意

    ### 正确使用String类的几点注意 在Java编程中,`java.lang.String`类是极为常见的基础数据类型之一,其重要性和应用范围不言而喻。为了更好地理解和使用String类,本文将从几个关键方面入手,探讨如何更加高效、...

    JAVA_StringBuffer

    `StringBuffer`的主要优势在于它的可变性,与`String`类不同,`String`对象一旦创建就不能改变。在需要频繁修改字符串内容的情况下,使用`StringBuffer`比使用`String`进行连接操作(如使用`+`运算符)更为高效。这...

    10个Java经典的String面试题

    在 Java 中,String 是一个非常重要的类,它在实际应用中扮演着关键角色。了解 String 的特点和使用方法是 Java 开发者必备的技能之一。下面我们将对 10 个 Java 经典的 String 面试题进行详细解答。 1. String 是...

    Java的String类

    4. **`StringBuffer`对象构造**:`String(StringBuffer sb)` - 将`StringBuffer`对象转换为`String`。 5. **Unicode代码点数组构造**:`String(int[] codePoints, int offset, int count)` - 接受一个包含Unicode...

    字符串数组转换成string类型的

    下面我们将详细讨论如何在不同语言中实现这个过程,并探讨其中涉及的关键知识点。 1. **C++** 在C++中,你可以使用`std::stringstream`或者`std::accumulate`函数来完成这个任务。`stringstream`允许你将一个字符...

    练习JAVA语句中的String

    下面我们将深入探讨`String`类的一些关键知识点,以及如何通过练习来熟练掌握它们。 1. **创建String对象**: - 字面量方式:`String str = "Hello, World!";` - 构造器方式:`String str = new String("Hello, ...

    JAVA中关于String的一些注意点

    本文将深入探讨Java中的`String`类及其使用时需要注意的关键点,希望对开发者们有所帮助。 #### 1. 字面量(Literal)与字符串常量池(String Constant Pool) 字符串字面量指的是直接用双引号括起来的字符串,...

    有关String的测试程序包含string内部一些函数

    以下是一些关于`String`类的关键知识点: 1. **不可变性**:`String`对象在创建后就不能更改。这意味着一旦创建了`String`实例,它的值就固定了。如果尝试修改字符串,实际上会创建一个新的`String`对象。例如,`...

    String创建对象

    以下是对`String`类创建对象的一些关键知识点的详细说明: 1. **字面量方式创建**: 在Java中,我们最常用的方法是通过字面量直接创建`String`对象,如`String str = "Hello"`。这种方式创建的`String`对象会存储...

    javastring.pdf

    下面我们将详细探讨`String`类的一些关键构造方法和方法。 1. **构造方法**: - `String()`:创建一个空字符串对象,不包含任何字符。 - `String(byte[] bytes)`:使用平台默认的字符集(Charset)将字节数组解码...

    java String 数据结构

    下面将详细探讨`String`类的数据结构、常用方法以及适用于初学者的一些关键知识点。 首先,`String`对象存储在常量池中,这是一个内存区域,用于保存所有的字符串字面量。这种设计是为了优化性能,因为相同的字符串...

    关于String类的一些方法

    在本文中,我们将深入探讨`String`类的一些关键方法,这些方法在日常编程中极为常用,有助于字符串的处理和操作。 1. **构造方法**: - `String()`:创建一个空字符串。 - `String(char[] value)`:根据字符数组...

    Java类库复习——java.lang.String

    本文将深入探讨`String`类的一些关键知识点,包括它的特性、构造方法、常用方法以及在实际开发中的应用。 首先,`String`对象表示不可变的字符序列。这意味着一旦创建了`String`实例,就不能更改它所包含的字符。这...

    我们一起学Java之String

    在JDK 8版本中,字符串常量池的位置发生了变化,从方法区移至Java堆中,但这并不影响程序员对字符串常量池的概念理解与使用。理解这一点对编写高效代码十分关键。 当程序需要存储一段字符串时,字符串常量池的机制...

    java 原始数组类型的String形式

    本篇文章将深入探讨如何将Java的原始数组类型转换为String形式,以及这个过程中的关键知识点。 首先,我们来看一下如何将整型数组(int[])转换为String。Java提供了一些内置的方法来帮助我们完成这个任务。最常用...

Global site tag (gtag.js) - Google Analytics