java学习记录(二)字符串

来源:互联网 发布:图案设计软件 编辑:程序博客网 时间:2024/05/29 17:43


String类:
1) String 字符串的值是不能改变的,改变的只是String变量的引用。
   如果要改变字符串值,使用 StringBuilder,StringBuffer
   String 不能改变值是因为在保存字符串的时候字符数组定义为final 
   private final char value[];


2) String 类覆写了 Object 类中equals方法,不再比较地址值,而是比较字符串值
   equalsIngoreCase(...)


3) String s = "abc"; 创建了一个对象; 该字符串保存在栈中
   String s = new String("abc"); 创建了两个对象,一个new出来的,一个是“abc”
 
4) 常用方法:
   length();
   charAt(int index);
   indexOf(int ch); 返回ch在字符串中第一次出现的位置
   indexOf(int ch, int fromIndex); 从fromIndex指定位置,获取ch首次出现的位置
   indexOf(String str);
   indexOf(String str, int fromIndex);
   lastIndexOf(...); 反向索引
   startWith(...)
   endWith(...)
   contains(...)
   String(char[]) String(char[],int index, int count)将字符数组转换成字符串


   copyValueOf(...) valueOf(...) 转换成字符串,静态方法。 


   toCharArray(...)  字符串转换成字符数组


   getBytes(...)字符串转换成字节数组,可以制定编码表


   replace();split();
   substring(begin,end)获取子串,包含begin,不包含end.
   trim()去除两端空格


5) StringBuffer 和 StringBuilder
   StringBuffer 是同步的
   StringBuilder 是非同步的
   StringBuffer 和 StringBuilder 默认都是初始是开辟数组的大小是16
   StringBuffer 和 StringBuilder 扩容的时候默认 newCapacity = value.length * 2 + 2
0 0
原创粉丝点击