String/StringBuffer

String

String一旦被赋值,便不能更改其指向的字符对象,如果更改,则会指向一个新的字符对象。

String的一些常用方法:
  • concaat(String str)将str附加到当前的字符串后生成一个新的字符串返回。【没什么用】
      String str = "YL";
      str.concat("你好!");
      Log.i(TAG, str);//结果为YL
      Log.i(TAG, str.concat("你好!"));//结果为YL你好!

当String的变量作为参数传递到函数中,即使函数中改变了它的值,但对函数外是没有影响。【这个是String的特例,其他引用类型一般都会产生影响的】。

  • 静态方法valueOf()负责将其它的基本数据类型转化为String。
  • charAt(int index)得到字符串中指定位置的一个字符
  • 转为数组的方法:转化为字节数组getBytes,转换为字符数组
  • toCharArray,按正则表达式方式分割成数个字符串数组的方法split。
  • replace() 替换
    • replace(char oldChar, char newChar)
    • replace(CharSequence target, CharSequence replacement)
    • replaceAll(String regularExpression, String replacement)//Regular Expression - 正则表达式 查找和替换文本模式的简洁而灵活的表示法。
  • trim() 去掉起始和结尾的空格
  • toLowerCase() 转换为小写
  • toUpperCase() 转换为大写
  • length() 取得字符串的长度
  • getChars() 截取多个字符
    void getChars(int sourceStart,int sourceEnd,char target[],int targetStart)
    sourceStart 指定了子串开始字符的下标
    sourceEnd 指定了子串结束后的下一个字符的下标。因此,子串包含从sourceStart到sourceEnd-1的字符。
    target 指定接收字符的数组
    targetStart target中开始复制子串的下标值
    如:
String s=”this is a demo of the getChars method.”; 
char buf[]=new char[20]; 
s.getChars(10,14,buf,0); 
Java里数字转字符串前面自动补0的实现。
/**  
 * Java里数字转字符串前面自动补0的实现。  
 *    
 */  
public class TestStringFormat {   
  public static void main(String[] args) {   
    int youNumber = 1;   
    // 0 代表前面补充0   
    // 4 代表长度为4   
    // d 代表参数为正数型   
    String str = String.format("%04d", youNumber);   
    System.out.println(str); // 0001   
  }   
}  

StringBuffer

StringBuffer构造函数
StringBuffer定义了三个构造函数:
StringBuffer()
StringBuffer(int size)
StringBuffer(String str)
StringBuffer(CharSequence chars)

length()和capacity()
length()计算StringBuffer当前长度,而整个可分配空间通过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() 截取子串
String substring(int startIndex)
String substring(int startIndex,int endIndex)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值