字符串的本质,常用方法
可变字符串增删改查 StringBuffer StringBuilder 链式操作
Math Random UUID
日期时间 Date SimpleDateFormat
String 字符串(字符序列),表示把多个字符按照一定的顺序连成的字符序列
字符串的本质是char[],字符串是常量,他们的值在创建后不可更改
String的对象是不可变的,可以共享,如果内容改变了,就变成新的对象
String str= "abcd"; <=> char[]={'a','b','c','d'};
String 对象是“空”值
表示引用为空(null)String str1= null;//没有初始化,没有分配内存空间内容为字符串String str2= "";//已经初始化,分配内存空间,不过没有内容
字符串常用方法
int length():返回此字符串的字符个数char charAt(int index):返回指定索引位置的字符int IndexOf(String str):返回指定字符串在此字符串中从左向右第一次出现的位置的索引boolean equals(Objects anObject):比较内容是否相等boolean equalsIgnoreCase(String anotherString):忽略大小写,比较内容是否相等String toUpperCase():把当前字符串转换成大写String toLowerCase():把当前字符串转换成小写String substring(int beginIndex):从当前位置开始截取字符串String substring(int beginIndex,int endIndex):截取指定区域的字符串boolean endsWith(String suffix):boolean startsWith(String prefix):replace(char oldChar,char newChar):替换字符和字符串trim():去掉字符串的前导和后导的空白
StringBuffer 和StringBuilder 可变常用字符串
可变字符串:字符串的内容可以通过提供的方法进行增删改查//1>构造器//构建一个可变字符串,默认容量是16字符(构建了一个字符串容器)StringBuffer s1=new StringBuffer();//构建一个可变字符串,默认容量是26字符StringBuffer s2=new StringBuffer(26);
StringBuffer 增删改查
//增//追加sb.append('h'); //hsb.append("hello"); //hhellosb.append(97); //hhello97//插入sb.insert(0,'b'); //bhhello97//删//删除指定位置的元素sb.deleteCharAt(0); //hhello97//删除指定范围内的元素sb.delete(1,5); //hO97//改sb.setCharAt(1,'n'); //hn97sb.replace(1,6,"HELLO"); //hHELLOSystem.out.println(sb.toString());//查System.out.println("可变字符串的长度"+sb.length()); //可变字符串的长度 6System.out.println("可变字符串的容量"+sb.capacity());//可变字符串的容量 16/*** 总结:对可变字符串的任何修改都是操作的同一个内存空间*/
3,56没做
