字符串String

it2022-05-05  164

一》.字符串的方法 1)。.length()  字符串的长度,即字符串包含的字符数 2)。 .concat()    如:string1.concat(string2);连接字符串  和“”+“”功能是一样的 3)。.format()  创建格式化字符串 4)。.endsWith()  如:string1.endsWith(".com") ; 测试此字符串是否以指定的后缀结束。    .startwith()测试此字符串是否以指定的前缀开始。 5).   .equals()  比较组成字符串内容的字符是否相等          ==比较两字符串在内存的首地址是否相等,即判断是否是同一个字符串对象。 6).equalsIgnoreCase()比较内容是否相等,忽略大小写      .toLowerCase()  使用默认规则将字符串中的字符转化为小写       .toUpperCase()   使用默认规则将字符串中的字符转化为大写  7)。 。hashcode() 返回此字符串的哈希吗 8)。.indexof(“。”)  搜索第一次出现“。”的位置   下标 返回的是int型下标值          如果没有找到搜索的字符或字符串则返回-1         .indexof(int ch,int fromindex)  从指定的位置开始索引         .lastindexof(".")搜索最后一次出现“。”的位置  下标 9)。 .intern()    字符串的规范化表示形式 10)。.regionMatches()  监测两字符串在一个区域内是否相等 public boolean  regionMatches(                  boolean  ignoreCase,//如果为 true,则比较字符时忽略大小写。                    int toffset,// 此字符串中子区域的起始偏移量。                                 String other,//字符串参数。                                                 int ooffset,//字符串参数中子区域的起始偏移量。                               int len//要比较的字符数。) 11)。  .replace(char oldChar,char newChar)返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的。 12)。.slipt()    拆分字符串  如:str.slipt("-")从有-的地方开始拆分字符串,拆开后放在字符串数组中 13)。.subSequence(int  beginIndex,int endIndex)返回一个新的字符序列,它是此序列的一个子序列

beginIndex -- 起始索引(包括)。

endIndex -- 结束索引(不包括)。

14)。.toCharAt()将字符串转化为字符数组 15).substring(int index)提取从位置索引开始的字符串,返回一个新的字符串   16)。.toString() 以字符串形式输出 17)。.trim()  忽略前导空白和尾部空白  “    qwe    ”  "qwe" 18)。String valueOf() 将括号内的内容转化为字符串  二》。stringBuffer: string的增强版   声明:必须重新new对象,追加少的话不用stringbuffer.append,用string就足够了, 而且速度效率比较快,对追加很多的就用stringbuffer.append,效率会很快   StringBuffer sb = new StringBuffer();     StringBuffer sb = new StringBuffer("aaa");     使用: sb.tostring();    转换为string型            sb.append("***")  追加字符串    运行速度比字符串中+和concat的效率高很多            sb.insert(i,',')   在字符串中插“,” 三》。string 和StringBuffer 的不同      String 是对象不是原始类型,为不可变对象,一旦被创建就不能被更改。。。它的值,对于已经存在的String进行修改,都是重新创建新的对象,然后把它的值保存进去,String是final类,不能被继承      StringBuffer 是一个可变的对象,当对它进行修改的时候不会像string一样,重新建立对象,他只能通过构造函数来建立, StringBuffer sb = new StringBuffer(); 不能通过赋值符号进行赋值,sb=“dgafd;错误    对象被建立以后,在内存中就会分配内存空间,并初始值保存一个null,向 StringBuffer 中赋值的时候通过他的append方法。  sb.append("***") *****字符串的连接操作中StringBuffer 效率高于string str=new string(“@@@@”);str=str+“xx”;的实际处理步骤是通过建立一个StringBuffer 对象,调用StringBuffer 对象的append方法,然后在调用tostring ()方法转成string,这样string的链接操作实际上就比StringBuffer 多出了一些附加操作,效率上就变低了,并且由于string是不可变对象,每次操作都对重新建立对象赋值,原有对象会废弃,自然会损耗效率。。

转载于:https://www.cnblogs.com/gmj0113/p/5621643.html


最新回复(0)