Java String
来源:互联网 发布:cdn网络加速 编辑:程序博客网 时间:2024/05/21 05:41
String 是一个final 类,代表不可变的字符序列。底层使用char[ ]存放。
String 的内存解析:
public void test1(){String str1 = "JavaEE";String str2 = "JavaEE";String str3 = new String("JavaEE");String str4 = "JavaEE" + "Android";String str5 = "Android";String str6 = str1 + str5;str5 = str5 + "Handoop";String str7 = str6.intern();String str8 = "JavaEEAndroid";System.out.println(str1 == str2);//trueSystem.out.println(str1 == str3);//falseSystem.out.println(str1.equals(str3));//trueSystem.out.println(str4 == str6);//falseSystem.out.println(str4.equals(str6));//trueSystem.out.println(str7 == str4);//trueSystem.out.println(str4 == str8);//truePerson p1 = new Person("AA");Person p2 = new Person("AA");System.out.println("^_^"+ (p1.name == p2.name));//true}
所以,String s = new String("xyz");创建了2个String Object.
String 方法
字符串对象操作的方法:
public int length() public char charAt(int index) // 返回在指定index位置的字符。public boolean equals(Object anObject) //比较字符串是否相等。相等返回true。public int compareTo(String anotherString) //从index = 0 开始比较,直到不等,返回不等时的差值public int indexOf(String s) //返回s字符串在当前字符串中首次出现的位置。若没有,返回 -1.public int indexOf(String s ,int startpoint) //返回s字符串从当前字符串startpoint 位置开始的,首次出现的位置public int lastIndexOf(String s) //返回s字符串在当前字符串中最后一次出现的位置。若没有,返回 -1.public int lastIndexOf(String s ,int startpoint)public boolean startsWith(String prefix) //判断当前字符串是否以prefix 开始public boolean endsWith(String suffix) //判断当前字符串是否以suffix 结束public boolean regionMatches(int firstStart,String other,int otherStart ,int length) //判断当前字符串从firstStart开始的子串与另一个字符串other从otherStart开始,length长度的字串是否equalspublic boolean contains(String s) //判断当前字符串是否包含s字符串对象修改的方法:public String substring(int startpoint)public String substring(int start,int end) //返回从start开始到end结束的一个左闭右开的子串。start可以从0开始的。pubic String replace(char oldChar,char newChar) //将当前字符串出现的所有oldChar 都改为newChar。返回的是一个字符串。但当前的字符串不会改变。public String replaceAll(String old,String new) //类似上一个public String trim() //去除当前字符串中首尾出现的空格,若有多个,就去除多个。 字符串中间的空格不会去除。public String concat(String str) //连接当前字符串与str 但当前的字符串不会改变。public String[] split(String regex) //按照regex将当前字符串拆分,拆分为多个字符串,整体返回值为String[]public Char[] toCharArray() //
转换
1. 字符串 与基本数据类型、包装类之间转换
( 1). 字符串 --->基本数据类型、包装类: 调用相应的包装类的parseXxx(String str); (2). 基本数据类型、包装类--->字符串: 调用字符串的重载的valueOf()方法
2. 字符串与字符数组间的转换
(1). 字符串---->字符数组:调用字符串的toCharArray();
(2). 字符数组---->字符串:调用字符串的构造器
3. 字符串与字节数组间的转换
(1). 字符串---->字节数组:调用字符串的getBytes()
(2). 字节数组---->字符串:调用字符串的构造器
StringBuffer
StringBuffer代表可变的字符序列,是一个容器。
StringBuffer类有三个构造方法:
1.StringBuffer()初始容量为16的字符串缓冲区 2.StringBuffer(int size)构造指定容量的字符串缓冲区 3.StringBuffer(String str)将内容初始化为指定字符串内容
StringBuffer 方法
StringBuffer append(String s), StringBuffer append(int n) , StringBuffer append(Object o) , StringBuffer append(char n), StringBuffer append(long n), StringBuffer append(boolean n), StringBuffer insert(int index, String str) public StringBuffer reverse() : 反转此StringBuffer StringBuffer delete(int startIndex, int endIndex) public char charAt(int n ) public void setCharAt(int n ,char ch) StringBuffer replace( int startIndex ,int endIndex, String str) public int indexOf(String str) public String substring(int start,int end) public int length() 总结:添加:append() 删除:delete(int i,int j) 修改:setCharAt(int index,char ch) 查 charAt(int n); 插入:insert(int index,String str) 反转:reverse() 长度:length()
StringBuilder类
String:不可变字符序列
StringBuffer:可变字符序列、效率低、线程安全
StringBuilder(JDK1.5):可变字符序列、效率高、线程不安全
效率从高到底: StringBuilde > StringBuffer > String
0 0
- Java 枚举 String-String
- 【Java】【String】String.intern()
- java string
- java String
- Java String
- Java String
- java String
- JAVA String
- java String
- java String
- Java [String]
- java String
- Java String
- Java string
- java String
- java String
- Java String
- java String
- CSS实现页面布局相关属性
- 理解dropout
- 如何通过实体组件系统在Javascript中构建游戏
- HDOJ 1061 Rightmost Digit(循环问题)
- ctags为已知语言添加扩展名
- Java String
- 08.Django自定义模板,自定义标签和自定义过滤器
- 多线程:NSOperation 的基本使用
- javascript跳跃式前进(2) - 作用域及引用类型
- activity启动模式,返回上一个activity时又调用一次onCreate()方法
- 自动检测iOS网络并可跳转至设置界面设置网络
- PYTHON-进阶-编码处理小结
- P2P理财需谨防披着“国资”外衣的狼
- 虚拟机的安装