String:
1.java语言中的字符串值属于String类,虽然有其它方法表示字符串(如字符数组),但java一般使用Sting类作为字符串的标准格式,java编译器把字符串值作为String对象。
2.String对象一旦创建就不能改变。如果需要进行大量的字符串修改操作,应该使用StringButter/StringBuilder类或者字符数组,最终结果可以被转换成String对象。

StringBuffer:
1.StringBuffer 线程安全的可变字符序列
2.一个类似于String的字符串缓冲区(字符数组)通过某些方法调用可以改变该序列的长度和内容。
3.每个字符串缓冲区都有一定的容量。只要字符串缓冲区所包含的字符序列的长度没有超过此容量就无须分配新的内部缓冲区数组。
4.如果内部缓冲区溢出,则此容量自动增大。

StringBuilder:
1.从JDK5开始,为StringBuffer类补充了一个单个线程使用的等价类,即StringBuilder。
2.与StringBuffer相比,通常应该优先使用StringBuilder类,因为它支持所有相同的操作,但是由于它不执行同步,所以速度更快。

public int length() //返回字符串长度
public int capacity() //返回字符串数组容量长度
public StringBuffer append(String str) //添加一个字符或字符串
public StringBuffer insert(int offset,String str) //在指定位置插入一个字符串
public int indexOf(String str) //查找字符串首次出现的下标
public int indexOf(String str,int fromIndex) //从指定位置开始,查找字符串首次出现的下标
public int lastIndexOf(String str) //查找字符串最近一次出现的下标
public StringBuffer reverse() //翻转字符串
public String toString() //将字符数组缓冲区转换为字符串常量
API文档讲解

public class StringBuilderDemo {

    public static void main(String[] args) {
// TODO Auto-generated method stub
//StringBuilder sb = "abc";//无此种声明方式
//StringBuilder sb = new StringBuilder();//默认16个字符大小的容量数组
//StringBuilder sb = new StringBuilder(100);//初始化100个容量的字符串数组
//StringBuilder sb = new StringBuilder("abc");//字符串的前三个字符是abc
StringBuilder sb = new StringBuilder();
sb.append("abc");
sb.append(1);
sb.append(1.5);
System.out.println(sb.length());
System.out.println(sb.capacity());
sb.insert(3, "def");
System.out.println(sb.toString());
sb.replace(3, 6, "kkk");
System.out.println(sb.toString());
System.out.println(sb.indexOf("b"));
System.out.println(sb.reverse());
} }

java String,StringBuilder和StringBuffer的更多相关文章

  1. 全面解释java中StringBuilder、StringBuffer、String类之间的关系

    StringBuilder.StringBuffer.String类之间的关系 java中String.StringBuffer.StringBuilder是编程中经常使用的字符串类,在上一篇博文中我 ...

  2. 【转载】关于Java String, StringBuilder, StringBuffer, Hashtable, HashMap的面试题

    REF: http://blog.csdn.net/fightforyourdream/article/details/15333405 题目是一道简单的小程序,像下面这样:[java] view p ...

  3. Java中String, StringBuilder和StringBuffer

    Java中常用来处理字符串的类有三个: String, StringBuffer和StringBuilder. 区别 三者都继承自CharSequence接口, 首先说明三者间主要区别 String字 ...

  4. Java基础学习总结(65)——Java中的String,StringBuilder和StringBuffer比较

    字符串,就是一系列字符的集合. Java里面提供了String,StringBuffer和StringBuilder三个类来封装字符串,其中StringBuilder类是到jdk 1.5才新增的.字符 ...

  5. java中StringBuilder、StringBuffer、String类之间的关系

    今天在CSDN的高校俱乐部里看到了"Java基础水平測试(英文)".感觉自己学了java这么久,想看下自己的java水平究竟是个什么样.測试结果就不说了,反正是慘不忍睹. 看了一下 ...

  6. java 常用类库:String ; StringBuilder和StringBuffer类

    1. String 1.String对象是不可变的 String类的value属性是用来存放字符串里面的值的.这个属性是被final修饰的.final修饰的变量不能够被第二次赋值,所以字符串是不可变的 ...

  7. Java String StringBuilder StringBuffer

    String是字符串常量 StringBuilder和StringBuffer都是字符串变量 速度方面:StringBuilder > StringBuffer > String 每当用S ...

  8. String StringBuilder以及StringBuffer

    例一:[看了威哥视频,下面更好理解] package sunjava; public class String_test { public static void main(String[] args ...

  9. String,StringBuilder和StringBuffer的特点和使用场景

    这三个类是平时开发中经常遇到的,主要差别是运行速度和线程安全,使用起来String最方便了,另外两个稍微复杂一些. 从运行速度角度看,StringBuilder>StringBuffer> ...

随机推荐

  1. Linux下常用的3种软件安装方式

    一:Linux源码安装    1.解压源码包文件    源码包通常会使用tar工具归档然后使用gunzip或bzip2进行压缩,后缀格式会分别为.tar.gz与.tar.bz2,分别的解压方式:   ...

  2. Angular2 获取当前点击的元素

    <a (click)="onClick($event)"></a> onClick($event){ console.log($event.target); ...

  3. [转]Sql Server Report Service 的部署问题

    本文转自:https://www.cnblogs.com/syfblog/p/4651621.html 近期在研究SSRS部署问题,因为以前也用到过SSRS报表,但当时开发的报表是有专门的集成系统的, ...

  4. HTML5本地存储localStorage、sessionStorage基本用法、遍历操作、异常处理等

    HTML5 的本地存储 API 中的 localStorage 与 sessionStorage 在使用方法上是相同的,区别在于 sessionStorage 在关闭页面后即被清空,而 localSt ...

  5. jQuery操作<input type="radio">

    input type="radio">如下: <input type="radio" name="city" value=&qu ...

  6. Json.Net 反序列化成匿名对象

    反序列化一个object var str1 = "{id:1,name:'111',x:[1,2,3],y:{a:'ssss',b:'dddd'}"; var obj1 = Jso ...

  7. Multipath多路径冗余

    一.什么是multipath 多路径冗余I/O(Multipath I/O)是指服务器通过多条物理路径连接到块存储设备. 为了避免存储链路单点故障,保证在磁盘阵列控制器切换时数据访问的不间断,多链路负 ...

  8. 通过ifrmae异步下载文档

    //通过ifrmae异步下载文档 function iframeGetFile(opts) { var defaultOpts = { filePath: '', onload: function ( ...

  9. 转:Jquery的parent和parents(找到某一特定的祖先元素)

    Jquery的parent和parents(找到某一特定的祖先元素) 关于Jquery的parent和parents parent是指取得一个包含着所有匹配元素的唯一父元素的元素集合.parents则 ...

  10. 【MUI框架】学习笔记整理 Day 2

    参考整理自MUI官网 http://dev.dcloud.net.cn/mui/ui/ (1)numbox(数字输入框) mui提供了数字输入框控件,可直接输入数字,也可以点击“+”.“-”按钮变换当 ...