一、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. Linux:安装OpenSSH-Server E:Package openssh-server has no installation candidate

    $sduo apt-get install openssh-server Reading package lists… Done Building dependency tree Reading st ...

  2. 20145320 《Java程序设计》第8周学习总结

    20145320 <Java程序设计>第8周学习总结 教材学习内容总结 15.1日志 java.util.logging包提供了日志功能相关类与接口,不必额外配置日志组件,就可以在标准ja ...

  3. Dijkstar算法的数学原理

    Dijkstar算法是荷兰数学家迪克斯屈拉(or迪杰斯特拉?)在1959年发现的一个算法.是现有的几个求带权图中两个顶点之间最短通路的算法之一.算是一个相当经典的算法了. 迪克斯屈拉算法应用于无向连通 ...

  4. Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead

    Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead 在解决问题Underscores can only ...

  5. LNK1169: one or more multiply defined symbols found

    The build failed due to multiple definitions of one or more symbols. This error is preceded by error ...

  6. 微信开发那点事(No.001)

    MXS&Vincene  ─╄OvЁ  &0000024─╄OvЁ  MXS&Vincene MXS&Vincene  ─╄OvЁ:今天很残酷,明天更残酷,后天很美好, ...

  7. Windows Azure Table storage 之 动态Table类 DynamicTableEntity

    在一般情况下,当我们在.net中使用Azure table storage的时候都会为该表建立一个TableEntity的派生类,如下所示. public class CustomerEntity : ...

  8. IOS手势UIGestureRecognizer

    UIGestureRecognizer是一个抽象类,定义了所有手势的基本行为,它有6个子类处理具体的手势: 1.UITapGestureRecognizer (任意手指任意次数的点击) // 点击次数 ...

  9. Stylish: http://bbs.csdn.net/topics/

    [id^=google_ads_], [id^=bd_ad_], #cpro_u2392825, [id^=BAIDU_SSP_], .bbs_top_ad, .csdn-toolbar, #topi ...

  10. atomic vs. nonatomic

    Declaring a property atomic makes compiler generate additional code that prevents concurrent access ...