欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java之String使用(包含StringBuffer和StringBuilder区别)

程序员文章站 2022-05-21 19:57:02
...
java.lang.String不可变的字符串,对String内容的改变都要重新申请内存。
java.lang.StringBuffer是线程安全的可变字符序列。可将StringBuffer安全地用于多个线程。
java.lang.StringBuilder是非线程安全的可变字符序列。多应用于单线程,将 StringBuilder 的实例用于多个线程是不安全的。但效率比StringBuffer要高

以下是string的七种用法,注意哦,记得要时常去查看java的API文档,那个里面也有很详细的介绍

1>获取
1.1:字符串中包含的字符数,也就是字符串的长度。
  int length():获取长度
1.2:根据位置获取位置上某个字符。
  char charAt(int index)
1.3:根据字符获取该字符在字符串中的位置。
  int indexOf(int ch):返回的是ch在字符串中第一次出现的位置。
  int indexOf(int ch,int fromIndex):从fromIndex指定位置开始,获取ch在字符串中出现的位置。
 
  int indexOf(String str):返回的是str在字符串中第一次出现的位置。
  int indexOf(String str,int fromIndex):从fromIndex指定位置开始,获取str在字符串中出现的位置。
1.4:int lastIndexOf(String str):反向索引。


2>判断
2.1:字符串中是否包含某一个子串。
      boolean contains(str);
   特殊之处:indexOf(str):可以索引str第一次出现为止,如果返回-1,表示该str不在字符串中存在。
             所以,也可以用于对指定判断是否包含。
       if(str.indexOf("a")!=1)

       而且该方法既可以判断,也可以获取出现的位置。

2.2:字符串中是否有内容。
       boolean isEmpty():原理就是判断长度是否为0。
2.3:字符串是否以指定内容开头。
   boolean startsWith(str);
2.4:字符串是否以指定内容结尾。
   boolean endsWith(str);
2.5:判断字符内容是否相同,复写了object类中的equals方法。
   boolean equals(str);
2.6:判断内容是否相同,并忽略大小写。
  boolean.equalsIgnorecase();

3>转换
3.1:将字符数组转成字符串。
  构造函数:String(char[])
      String(char[],offset,count):将字符数组中的一部分转成字符串
   静态方法:
     static String copyValueOf(char[]);
     static String copyValueOf(char[] data,int offset,int count);

     static String valueOf(char[]);
3.2:将字符串转成字符组
  char[] tocharArray();

3.3:将字节数组转成字符串。
      String(byte[])
      String(byte[],offset,count):将字节数组中的一部分转成字符串
  3.4:将字符串转成字节数组。
  byte[] getBytes()

3.5:将基本数据类型转成字符串,
static String valueOf(int)
static String valueOf(double)

// 3+"" 与 String.valueOf(3)的值是一样的
特殊:字符串和字节数组在转换过程中,是可以指定编码的。

4>替换
String replace(oldchar,newchar);

5>切割
String[] split(regex);

6>子串。获取字符串中的而一部分
String subString(begin);
String subString(begin,end);

7>转换,去除空格,比较。
7.1:将字符串转成大写或小写
   String toUpperCsae() 大转小
   String toLowerCsae() 小转大

7.2:将字符串两端的多个空格去除
   String trim();

7.3:对两个字符串进行自然顺序的比较
   int compareTo(string);
相关标签: java