Java字符串使用方法/String/StringBuffer/String

字符串

1. String用法

new出来的都在堆内存里面。

方法 作用
charAt(index) 找到指定索引的值
lenght() 返回字符串的长度
indexOf('char', startIndex)或者indexOf(num(ASCll),startIndex) 传入的值为字符,则返回指定字符的索引;如果传入的为数字,则数字相当于指定的ASCll码传入方法中,返回对应的索引值。

indexOf()的使用

public static void main(String[] args){
    String num = "hello world  a";
    System.out.println(num.indexOf(97)); // 这里的97对应ASCll中的a字符,所以返回值对应num里面的a的索引,所以输出 12。
}
// 输出12
方法 作用
lastIndexOf('char', startIndex) 查找指定的字符在字符串中最后出现的索引位置
startWith("Str") 判断原字符串是否以指定的字符串开头,返回值为boolean类型。
endsWith("Str") 判断是否是以指定字符串结尾的,返回值为boolean类型。
replace(oldChar, oldChar) 将老的字符串转换成新的字符串,返回值为一个新的字符。

String的方法不会更改原字符串的内容,因为String是不可改变的,所以替换后得到的是一个全新的字符串,最原字符串不会有任何影响。

方法 作用
toLowerCase() 将字符串中的所有字符转换成小写。
toUpperCase() 将字符串中的所有字符转换成大写。
  • 字符串的截取
方法 作用
subString(startIndex, endIndex) 指定字符串的开始和结束位置进行截取。
split("char") 指定字符串中的字符进行截取,返回值为数组列表。
public static void main(String[] args){
    String num = "hello world";
    for(int i = 0;i<num.split("o").length;i++){
        System.out.println(num.split("o")[i]);
    }
}
// 输出
// hell
//  w
// rld a
方法 作用
trim() 删除字符串两边的空格
  • 字符串的比较
方法 作用
equals("Str") 判断制定字符串是否和指定字符串形同。
// 字面量的比较和全等
publlic static void main(String[] args){
    String a = new String("boo");
    String b = new String("boo");
    System.out.println(a.equals(b));
    System.out.println(a == b);
}
// 输出
// true
// false

2. StringBuffer用法

方法 作用
hashCode() 返回指定字符串对应的地址对应的数字。
append("Str") 在指定字符串中添加指定字符串。
insert(index, "file") 在指定索引位置插入对应的文本内容。
delete(startIndex, endIndex) 删除字符串中指定位置的字符串,左闭右开。

3. StringBuffer用法

JDK1.5以后才有StringBuffer

  • StringBuffer是线程安全的,但是StringBuffer不是线程安全的。
  • StringBuffer的效率比StringBuffer底,因为StringBuffer要检测线程安全。

4. 作业

求两个字符串最大相同的子串。

你可能感兴趣的:(学习Java,字符串,java)