java 关于String

1、两种创建方式

1 String str1 = "abc";        //字面量创建
2 String str2 = new String("abc");  //构造方法创建

使用字面量创建时只会生成一个对象,而通过构造方法创建时会生成两个对象(前面的str2和后面的new String对象)

2、常见的构造方法

1 public String()    //空参构造
2 public String(byte[] bytes)  //把字节数组转换成字符串
3 public String(byte[] bytes,int index,int length)  //把字节数组的一部分转换成字符串
4 public String(char[] value)  //把字符数组转换成字符串
5 public String(char[] value,int index,int count)  //把字符数组的一部分转换成字符串

3、其它常用方法

 1 int length()  //返回字符串长度
 2 
 3 String substring(int beginIndex,int endIndex)      //获取字符串的一部分
 4 //beginIndex 开始位置下标  endIndex 结束位置下标+1
 5 String substring(int beginIndex)  //获取字符串的一部分
 6 //beginIndex 开始位置下标 一直到最后
 7 boolean startsWith(String prefix)  //判断一个字符串的开头、前缀是不是prefix
 8 
 9 boolean endsWith(String prefix)  //判断一个字符串的结尾、后缀是不是prefix
10 
11 boolean contains(String s)  //判断一个字符串是否包含s
12 
13 int indexOf(char ch)  //查找一个字符,返回在字符串中第一次出现的索引,如果没找到,则返回-1
14 
15 byte[] getBytes()  //将字符串转换成字节数组
16 
17 char[] toCharArray()  //将字符串转换成字符数组
18  
19 boolean equals(Object obj)  //判断字符串中的字符是否完全相同,完全相同返回true,区分大小写
20 
21 boolean equalsIgnoreCase(String s)  //同上,忽略大小写
22 
23 toUpperCase()  //转大写
24 
25 toLowerCase()  //转小写

4、String、StringBuffer、StringBuilder

4.1、String是不可变的字符序列,在定义时长度就确定了。StringBuffer与StringBuilder是可变的字符序列,长度默认为16位,定义时不足16位的位置为空,后续可以在填充,实现长度可变。

4.2、StringBuffer是jdk1.0版本的,线程安全、效率低,StringBuilder是jdk1.5版本的,线程不安全、效率高

 

posted @ 2019-02-15 09:05  voidchar  阅读(356)  评论(0编辑  收藏  举报