Java语言基础之String,StringBuffer,StringBulider
来源:互联网 发布:曼秀雷敦护手霜 知乎 编辑:程序博客网 时间:2024/06/04 22:46
就像C++中的String一样,String类型也有这许多相同之处。
String的相关操作:
1字符串长度获取: int length() 方法
2查找字符的位置: int indexOf(int ch);
3查找字符串的位置: indexof(String str);
4查找是否包含字符串:boolean contains(String str)
5判断字符串内容是否相同 :boolean equals(String str)
6判断字符串内容是否相同 并忽略大小写 boolean equalsIgnoreCase(String str)
7判断字符串是否匹配给定的正则表达式。 boolean matches(String regex)
8获得子串:String substring(int beginIndex, int endIndex) 返回一个新字符串
字符串相关转换:
转换为字符串:
通过String构造方法,可以将字节数组转成字符串:String(byte[] b)
通过String构造方法, 可以将字符数组转成字符串:String(char[] ch)
通过String构造方法, 将StringBuffer转换为字符串:String(Stringbuffer buffer)
通过String构造方法, 将StringBuilder转换为字符串:String(StringBuilder builder)
转换为其他数据类型:
将字符串转成字符数组:char[] toCharArray()
将字符串转换成字节数组:byte[] getBytes()
字符替换:
String replace(char oldchar,char newchar)
String replaceAll(String regex, String replacement)
字符比较:
int compareTo(String anotherString) 按字典顺序比较两个字符串。
int compareToIgnoreCase(String str) 按字典顺序比较两个字符串,不考虑大小写。
StringBuffer与StringBulider
StringBuffer 线程同步 安全 但效率低 建议多线程时用
StringBuilder 线程不同步 不安全 但效率高 建议单线程用
package Com.Example.Stringbuffer;public class Main {/* * StringBuffer 线程同步 安全 但效率低 建议多线程时用 * StringBuilder 线程不同步 不安全 但效率高 建议单线程用 */public static void main(String[] args) {/**StringBuffer 线程同步**************************/StringBuffer sb= new StringBuffer();sb.append("10");sb.append("rr");System.out.println(sb.toString());sb.insert(0, "start");System.out.println(sb.toString());sb.delete(0, 3);System.out.println(sb.toString());System.out.println(sb.length());System.out.println(sb.indexOf("rr"));System.out.println(sb.reverse());/************************************************//********StringBuilder 线程不同步*****************/ StringBuilder sb2=new StringBuilder();sb2.append("aaa");System.out.println(sb2.toString());/***********************************************//***********************************************/String str=" 1.. ";System.out.println(str.trim()); //去除空格char [] charg={'a','b','c'};// 将字符数组转化为字符串String str2= new String(charg);System.out.println(str2);/***********************************************/}}
升级通常需要考虑的三个重要因素:
提高安全性
提高效率
简化书写
- Java语言基础之String,StringBuffer,StringBulider
- java之String,StringBulider,StringBuffer的比较
- Java之String、StringBuffer、StringBulider辨识
- 黑马程序员——五、java基础之String、StringBuffer、StringBulider(8)
- Java基础之数据类型(二)String,StringBulider,StringBuffer区别以及常用API
- String、StringBulider和StringBuffer
- String ,StringBuffer,StringBulider
- String、StringBulider和StringBuffer
- String,StringBuffer,StringBulider
- String,StringBuffer,StringBulider
- String StringBuffer StringBulider 区别
- String 、StringBuffer、StringBulider
- String、StringBuffer、StringBulider比较
- String 、StringBuffer、StringBulider
- String StringBuffer StringBulider
- String,Stringbuffer,StringBulider区别
- Java语言基础之String及StringBuffer之二(用法)
- Java语言基础之String及StringBuffer之一(区别)
- Android 6.0 源代码编译实践
- 队列应用-素数环问题
- map
- float浮点数的内存格式
- Codeforces 603A Alternative Thinking(字符串规律)
- Java语言基础之String,StringBuffer,StringBulider
- 关于ALAssetsLibrary的学习
- long start time
- Adreno Profiler分析任意安卓游戏特效+抓取资源
- HashSet,TreeSet和LinkedHashSet的区别
- 深入理解Java:内省(Introspector)
- Android开发艺术探索学习-View的滑动
- android sdk 安装及解决翻墙获取包列表、提升下载速度
- poj 2409 polya原理