java复习(String类,StringBuffer 类)

 java.lang.Object

   java.lang.String

    字符串操作类

  字符串是一个常量,一旦创建就不能更改,所有的 " " 都是 String 类对象,字符长的本质就是 字符数组 , 默认编码表是GBK,一个汉字采用两个字节,汉字的字节编码是负数

  String 常用构造函数

    1) String(byte[] b)

      通过使用平台默认的编码表,将数组转乘字符串

    2) String (byte[] bytes, int offset, int length)

      通过使用平台默认的编码表来解析一个字符数组, offset 开始位置, length 解析长度

  
 
  String 常用方法
    1) String substring (in beginIndex, int endIndex)
      返回一个字符串,该字符长是此字符串的子字符串,(开始位置,结束位置) 包含头,不包含尾
    2) boolean startsWith(String prefix)
      判断prefix 是不是另一个字符串的前缀
    3) boolean endsWith(String prefix)
      判断prefix 是不是另一个字符串的前结尾
    4) boolean contains(String s)
      是否包含另一个字符串
    5) int indexOf(char ch)
      查找一个字符,第一次出现的在字符串的位置,不存在返回 -1
    6) byte[] getBytes()
      将字符串转化为字符数组,此功能与构造方法相反(byte 数组相关功能,都查询编码表)
    7) char[] toCharArray()
      将字符串转成字符数组,此功能与构造方法相反
    8) boolean equals(Object obj)
      比较是否相同(不忽略大小写)
    9) boolean equalsIgnoreCase(String s)
      比较两个字符串是否一样(忽略大小写)
 
 
 
 java.lang.Object

  java.lang.StringBuilder  线程不安全

 java.lang.Object

  java.lang.StringBuffer 线程安全

 

 两个类的API相同,只有线程安全不同(速度不同)
  字符串缓冲区,支持字符串的修改,提高字符串的操作效率(实质是一个数组容器)
  
  常用方法
    1) StringBuffer append(XXX xxx) boolean char char[] double float long int Object 等等
        将各种数据类型的变量添加到 字符序列
    2) StringBuffer delete(int start, int end)
        删除此字符串的指定位置的字符,包含头不包含尾,start开始,end-1结束
    3) StringBuffer insert(int index,XXX xxx) boolean char char[] double float long int Object 等等
        在指定位置插入各种类型的变量
    4) StringBuffer replace(int start ,int end,String str)
        范围内的字符串替换
1 StringBuffer sb = new StringBuffer();
2 sb.append("abcdefgh");
3 ab.replace(1,5,"555");
4 // a555fgh

 

    5) StringBuffer reverse() 
        字符串被相反的序列替代
    6) String toString()
        变成字符串
 
 
 
 
 
 
 
 
 
 
posted @ 2018-09-20 17:53  0泡果奶  阅读(152)  评论(0编辑  收藏  举报