java String详解

来源:互联网 发布:淘宝网生产许可证编号 编辑:程序博客网 时间:2024/06/07 19:01

String

直接赋值

String str=“hellow”;只创建了一个内存空间

使用new关键字 String str=new String(“hellow”);

使用new关键字实例化String时会在堆内存中开辟2个空间,其中第一个空间没用,在等待垃圾回收器回收,所以使用直接赋值的方式会更合理。String str="hellow";    String str1=new String("hellow");    System.out.print(str==str1);结果返回false,内存空间不同,所以返回false-------------------------------------str.equals(str1);//返回true‘==’比较的是地址‘equals’比较的是内容,在开发中多用equals

String内容不可更改(耗资源)

String str=“hellow”; str=str+“world”;表面上是更改了,实际上是先在堆内存中开辟空间放‘hellow’,再开辟空间放‘world’,再开辟空间放‘hellowworld’,最终str指向--->‘hellowworld’,所以改变的只是对内存地址的指向

String的常用方法

字符串长度:length()字符串转换数组:toCharArray()从字符串中取出指定位置的字符:charAt()字符串与byte数组的转换:getBytes()过滤字符串中存在的字符:indexOf(),返回的是该字符在字符串中的位置去掉字符串前后的空格:trim()从字符串中取出子字符串:subString()大小写转换:toLowerCase() toUpperCase()判断字符串开头,结尾字符:endsWith() startWith()替换String字符串中的一个字符:replace();

StringBuffer

认识StringBuffer

缓冲区,本身也是操作字符串,但是与String不同,StringBuffer可以更改StringBuffer是一个操作类,所以必须通过实例化来操作,处理速度比String快

StringBuffer常用方法

append()---追加内容insert(位置,内容)--插入replace(开始位置,结束位置,替换内容)indexOf()

StringBuilder

1.一个可变的字符序列,该类被设计作用StringBuffer的一个简易替换,用在字符串缓冲区,被单个线程使用时,建议优先考虑该类,速度比StringBuffer快。2.但是如果涉及到线程安全,建议使用StringBuffer

StringBuilder常用方法

append()insert()
1 0
原创粉丝点击