java中字符串操作string、stringBuffer和stringBuilder的区别以及其相关操作技术
来源:互联网 发布:知识库软件 编辑:程序博客网 时间:2024/05/21 15:04
简单来说:
1、基本概念,string字符串常量,长度不可变;stringBuffer字符串变量,长度可变(线程安全);stringBuilder字符串变量,长度可变(非线程安全);
2、执行效率,就单个字符串对象效率比较来说string>stringBuilder>stringBuffer;
举个简单的例子,string=“abc”+“def”+“ghi”;JVM在创建string对象时会认为string=“abcdefghi”;执行效率相当快
相比之下stringBuffer来说stringBuffer strBuff=new stringBuffer();strBuff.append("abc").append("def")+append("ghi");速度上来说是比不上string的。
但是如果需要创建多个string来说,stringBuffer是可变长度,效率比较为stringBuilder>stringBuffer>string。
举个例子:string num1=“abc”;
string num2=“def”;
string num3=“ghi”;来说JVM要创建三个string对象,当三个对象使用完之后JVM还的对这三个对象自动回收(AutoClose),所以采用可变长度stringBuffer要效率高。
3、基本操作方法:stringBuffer,stringBuilder的操作一样,下面只对stringBuffer操作和string操作作讲解。
1、三者之间的转换问题: stringBuffer转换string对象,string str=new string(stringBuffer strBuff);
string转换为stringBuffer对象 stringBuffer strBuff=new stringBuffer(string str);
2、我们最常见的Tostring方法,其实他是基本数据类型valueof()字符转换方法中的子方法。
charAt()单个字符转换方法,char charAt(int index);例如 char ch;ch=“abc”.charAt(2);即把c赋值给ch变量。
getChars()多个字符提取方法:一般形式为 void getChars(int sourseState,int sourseEnd,Char target [ ],int targetStart);
getBates()字符到字节转换方法:一般形式 byte[ ] getBytes();
toCharArray()字符转换为字符数组方法;一般形式 char [] toCharArray(0;
4.字符串比较,主要方法为equals()内容比较方法,它与“==”是有区别的,后者在于对象的是否相等。
equalsIgnoreCase()不区分大小写比较相等。
regionMatches()比较一段字符与另一段字符中的一段是否相等
bollean regionMaches(int startindex,string str2,int str2StartIndex,int numChars);
bollean regionMaches(bollean ignoreCase,int startindex,string str2,int str2StartIndex,int numChars);ignoresCase为true表示则忽略大小写,否则大小写有意义。
其他方法读者自己领悟
- java中字符串操作string、stringBuffer和stringBuilder的区别以及其相关操作技术
- java中String和StringBuffer以及StringBuilder的区别
- Java的String、StringBuilder以及StringBuilder和StringBuffer的区别
- 四:Java之字符串操作String、StringBuffer和StringBuilder
- Java中String、StringBuilder以及StringBuffer的区别
- Java中String、StringBuilder以及StringBuffer的区别
- Java中String、StringBuilder以及StringBuffer的具体区别
- String和StringBuffer以及StringBuilder的区别
- java字符串 -- String,StringBuffer,StringBuilder的区别
- java中String、StringBuffer和StringBuilder区别
- java中string stringbuffer和stringBuilder区别
- 【Java】Java中,String、StringBuffer和StringBuilder的区别
- Java中String ,StringBuffer和StringBuilder的区别和用法
- 在Java中string和stringbuffer和stringbuilder的区别
- Java中String、StringBuilder和StringBuffer的区别
- Java中String,StringBuilder和StringBuffer的区别
- Java中String,StringBuilder和StringBuffer的区别
- java中String、StringBuffer和StringBuilder的区别
- centox86_64交叉编译环境搭建
- !important 语法解析
- python 读取数据库,老是报错
- 湖南快乐阳光互动娱乐传媒有限公司诉被告杭州三基传媒有限公司侵害作品信息网络传播权纠纷一案
- awk取最后一列
- java中字符串操作string、stringBuffer和stringBuilder的区别以及其相关操作技术
- UltraEdit-32 (简体中文)V21.10.1027 绿色单文件破解版
- STL容器介绍
- c++文件读写基本操作
- Android自定义组件系列【7】——进阶实践(4)
- 深入研究Clang(三) libclang
- WPF Clip实现百叶窗
- 《中国最狂的总裁---马云》阅读笔记
- ios UIKit框架分析 第5天