一、String类的方法

  • public char charAt(int index)          返回字符串index个字符
  • public int length()         返回字符串长度
  • public int indexof(String str)        返回字符串中出现str的第一个位置
  • public int indexof(String str, int fromIndex)      返回字符串中从fromIndex开始出现str的第一个位置
  • public boolean equalsIngoreCase(String another)         比较字符串与another是否一样(忽略大小写)
  • public String replace(char oldChar, char newChar)         在字符串中用newChar字符替代oldChar字符,返回一个新的字符串
  • public String replaceAll(String regex,String replacement)使用给定的 replacement 字符串替换此字符串匹配给定的正则表达式的每个子字符串。
  • public boolean startsWith(String prefix)         判断字符串是否以prefix字符串开头
  • public boolean endsWith(String suffix)        判断字符串是否以suffix字符串结尾
  • public String toUpperCase()        返回一个字符串为该字符串的大写形式
  • public String toLowerCase()       返回一个字符串为该字符串的小写形式
  • public String subString(int beginIndex)       返回该字符串从beginIndex开头到结尾的子字符串
  • public String substring(int beginIndex, int endIndex)        返回该字符串从beginIndex开始到endIndex结尾的子字符串
  • public static String value of(...)    如public static String value of(double d)            可以将基本类型数据转化成为字符串
  • public String[] split(String regex)        可以将一个字符串按照指令的分隔符分隔,返回分隔后的字符串数组
  • public char[] toCharArray()      将此字符串转换为一个新的字符数组。返回:一个新分配的字符数组,它的长度是此字符串的长度,而且内容被初始化为包含此字符串表示的字符序列。
  二、StringBuffer类的用法 
  • 构造函数
  1. StringBuffer()
  2. StringBuffer(int size)
  3. StringBuffer(String str)
  4. StringBuffer(CharSequence chars)
  • length()和capacity()

一个StringBuffer当前长度可通过length()方法得到,而整个可分配空间通过capacity()方法得到。

  • ensureCapacity() 设置缓冲区的大小

void ensureCapacity(int capacity)

  • setLength() 设置缓冲区的长度

void setLength(int len)

  • charAt()和setCharAt()

char charAt(int where)

void setCharAt(int where,char ch)

  • getChars()

void getChars(int sourceStart,int sourceEnd,char target[],int targetStart)

  • append() 可把任何类型数据的字符串表示连接到调用的StringBuffer对象的末尾。

例:int a=42;

StringBuffer sb=new StringBuffer(40);

String s=sb.append("a=").append(a).append("!").toString();

  • insert() 插入字符串
  • StringBuffer insert(int index,String str)
  • StringBuffer insert(int index,char ch)
  • StringBuffer insert(int index,Object obj)

index指定将字符串插入到StringBuffer对象中的位置的下标。

  •  reverse() 颠倒StringBuffer对象中的字符

StringBuffer reverse()

  • delete()和deleteCharAt() 删除字符

StringBuffer delete(int startIndex,int endIndex)

StringBuffer deleteCharAt(int loc)

  • replace() 替换

StringBuffer replace(int startIndex,int endIndex,String str)

  • substring() 截取子串
  1. String substring(int startIndex)
  2. String substring(int startIndex,int endIndex)
public class StringBuffer_test2 {
public static void main(String[] args) { //创建可变字符串
StringBuffer s; String s1="djkkjsasahhcak"; s=new StringBuffer(s1);
s1=s.toString(); //StringBuffer转换为String
//StringBuffer的常用方法
//append方法该方法的作用是追加内容到当前StringBuffer对象的末尾,类似于字符串的连接。
//调用该方法以后,StringBuffer对象的内容也发生改变,例如:s.append("flase"); s.append(true);
System.out.println(s);
StringBuffer ss=new StringBuffer(); String s2="test"; String s3="";
ss.append("select*form userInfo where username=").append(s2).append(" and password=").append(s3);
System.out.println(ss); //deleteCharAt方法:该方法的作用是删除指定位置的字符,然后将剩余的内容形成新的字符串。
StringBuffer ss1=new StringBuffer("test");
ss1.deleteCharAt();
ss1.delete(, );
System.out.println(ss1);
//insert方法 :该方法的作用是在StringBuffer对象中插入内容,然后形成新的字符串。例如:
System.out.println(ss1.insert(0, false));
//
System.out.println(ss1.replace(, , "ks"));//插入加反转 //setCharAt方法:该方法的作用是修改对象中索引值为index位置的字符为新的字符
ss1.setCharAt(ss1.indexOf("a"), 'k');
ss1.replace(, , "");
System.out.println(ss1);
ss1.replace(, , "");
System.out.println(ss1);
//trimToSize方法该方法的作用是将StringBuffer对象的中存储空间缩小到和字符串长度一样的长度,减少空间的浪费。
String s22=ss1.toString();
ss1.trimToSize();
System.out.println(ss1);
}
}

String类和StringBuffer类的方法的更多相关文章

  1. String类和StringBuffer类的区别

    首先,String和StringBuffer主要有2个区别: (1)String类对象为不可变对象,一旦你修改了String对象的值,隐性重新创建了一个新的对象,释放原String对象,StringB ...

  2. String类,StringBuffer类转字符数组

    String不可变类型和StringBuffer可变类型 String类和StringBuffer类都是字符串表示类,区别在于String对象引用变量是不可变的,而StringBuffer类对象引用变 ...

  3. Java 常用类String类、StringBuffer类

    常用类 String类.StringBuffer类 String代表不可变的字符序列 "xxxxxxx"为该类的对象 举例(1) public class Test { publi ...

  4. 【学习笔记】String进阶:StringBuffer类(线程安全)和StringBuilder类

    一.除了使用String类存储字符串之外,还可以使用StringBuffer类存储字符串.而且它是比String类更高效的存储字符串的一种引用数据类型. 优点: 对字符串进行连接操作时,使用Strin ...

  5. 一大波Java来袭(四)String类、StringBuilder类、StringBuffer类对照

    本文主要介绍String类.StringBuffer类.StringBuilder类的差别  : 一.概述 (一)String 字符串常量.可是它具有不可变性,就是一旦创建,对它进行的不论什么改动操作 ...

  6. String类与StringBuffer类

    String类与StringBuffer类   一.String类和StringBuffer类的区别 String类是不可变类,新建的对象为不可变对象(String类的内容和长度是固定的),一旦被创建 ...

  7. (1)StringBuilder类和StringBuffer类 (2)日期相关的类 (3)集合框架 (4)List集合

    1.StringBuilder类和StringBuffer类(查手册会用即可)1.1 基本概念 由于String类描述的字符串内容无法更改,若程序中出现大量类似的字符串时需要申请独立的内存空间单独保存 ...

  8. 【java】String类和StringBuffer类常用操作

    String类是字符串常量,是不可更改的常量.而StringBuffer是字符串变量,它的对象是可以扩充和修改的.StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于Stri ...

  9. java中String类、StringBuilder类和StringBuffer类详解

    本位转载自http://www.cnblogs.com/dolphin0520/p/3778589.html  版权声明如下: 作者:海子 出处:http://www.cnblogs.com/dolp ...

随机推荐

  1. JAVA线程池原理详解一

    线程池的优点 1.线程是稀缺资源,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以重复使用. 2.可以根据系统的承受能力,调整线程池中工作线程的数量,防止因为消耗过多内存导致服务器崩溃. 线 ...

  2. JS中对this的理解

    // this: 指的是调用 当前 方法(函数)的那个对象 <script> function fn1(){ this } 情况1:fn1()                  //这里t ...

  3. Mysql 设置utf-8 真正一劳永逸的方法

    用 bash 进入linux 之后,再 mysql -u root -p ,如果insert into 某个表,总是会出现乱码. 网上搜了一堆,其中一个老外的说法才适用.用 set names utf ...

  4. IPC

    IPC,全名Inter Process Communication即进程间通讯,在同一台机器上的两个进程就用IPC,不能跨物理机器。IPC包括共享内存、队列、信号量等几种方式,由于IPC通讯效率之高, ...

  5. servletFileUpload

    引用:http://bbs.csdn.net/topics/390290685?page=1 Java code? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...

  6. JS中同名函数有效执行顺序

    html中如果出现函数同名时:如果有多个外部引入的js文件,例如a.js和b.js(引入顺序假定是a.js,然后是b.js),同时html中本身也有内部的js.那么针对 出现函数名一样的情况时,无论他 ...

  7. 如何在普清的屏上调试CSS样式二倍图背景

    背景: 最近就遇到一个同事的项目,还是像平常一样小心切图,认真对像素. 一切测试都没有问题,顺利上线. 但是,上线之后,产品经理跑过来说,有BUG. BUG描述:(不认为是BUG) 前端页面上的图标是 ...

  8. iPad和iPhone开发区别

    原文:http://mobile.51cto.com/iphone-273895.htm iPad与iPhone 开发区别详解是本文要介绍的内容,先来看看他们的区别. 1.首先我们先从官方发布的SDK ...

  9. [课程设计]Scrum 2.7 多鱼点餐系统开发进度(下单一览页面-菜式添加功能的继续实现)

    Scrum 2.7 多鱼点餐系统开发进度  (下单一览页面-菜式添加功能的继续实现) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团 ...

  10. 利用javascript实现课程选择

    最终实现的效果如下图所示: 代码如下所示: HTML代码部分: <body> <div class="page" style="overflow: hi ...