【Java】String、StringBuffer、StringBuilder的基本用法

【Java】String、StringBuffer、StringBuilder的基本用法,第1张

一、关于字符串String 1.常用的输入方式
Scanner in = new Scanner(System.in);
//输入方法一
String s1 = in.next();
//输入方法二
String s2 = in.nextLine();

in.next(): 读到空格就停止扫描(输入)。

in.nextLine():读到回车就停止扫描(输入)。

2.String类型的修改

在java中字符串一旦定义了,就不可以改变。我们可以通过String的方法或者通过复制定义的字符串构造StringBuilder和StringBuffer实现对字符串的“修改”。

3.关于String类型的访问

可以通过string.charAt(int Index)对字符串某一位置上的字符进行访问,但是不可以通过该方法对其修改。

4.关于String的分割
String s = in.nextLine();
String newLine = s.split(" ");
//通过空格分割字符串将一个一个字符分割出来的子串存放在一个String数组中;
5.String的方法
String s = in.nextLine();


s.length();
//返回当前字符串的实际长度;
s.charAt(int Index);
//返回下标为Index的字符;
s.substring(int start);
//返回从start开始一直到结束的子串;
s.substring(int start,int end);
//返回范围是[start,end)的子串;
s.compareTo(String anotherString)
//与anotherString进行比较,s大返回正数,s小返回负数,相等返回0;
s.compareTolgnore(String anotherString)
//与anotherString进行比较,s大返回正数,s小返回负数,相等返回0,但忽略大小写;
s.equals(Object anotherObject);
//相等返回true不相等返回false;
s.equalslgnoreCase(String anotherString);
//相等返回true不相等返回false,忽略大小写;
s.cancat(String str)
//连接s和str等效于“+”
s.indexOf(int n/String str);
//从头开始查找n或者str首次出现的位置(若是str返回开始字符的下标),如果没有返回-1;
s.indexOf(int n/String str,int p);
//和上一个方法类似,不同的是从左开始的某个下标往后查找。
s.lastIndexOf(int ch/String str);
//与前面类似,区别在于该方法从字符串的末尾位置向前查找。
s.lastIndexOf(int ch/String str,int p);
//和上一个方法类似,不同的是从左开始的某个下标往前查找。
s.toLowerCase();
//字符串小写转大写;
s.toUpperCase();
//字符串大写转小写;
s.replace(char a,char b);
//将s中的a都替换成b;
s.replaceFirst(String a,String b);
//将s中的第一个子串a替换成b;
s.replaceAll(String a, String b);
//将s中所有a子串替换成b;

三、关于StringBuffer(可变长的字符缓冲区) 1.StringBuffer的构造
StringBuffer s = new StringBuffer();//无参数构造;
StringBuffer s = new StringBuffer(int I);//指定容量构造;
StringBuffer s = new StringBuffer(String s_);//指定字符串构造;
2.StringBuffer的方法
StringBuffer s = new StringBuffer();

s.Capacity();
//返回当前字符串缓冲区的容量;
s.length();
//返回当前字符串缓冲区的实际长度;
s.append(String str);
//向字符串缓冲区内添加字符串str,;
s.insert(int p,String s);
//在第p+1的位置上插入s;
s.deleteCharAt(int Index);
//删除指点字符,返回字符缓冲区;
s.delete(int start,int end);
//删除[start,end)的字符,返回字符缓冲区;
s.substring(int start);
//返回从start开始一直到结束的子串;
s.substring(int start,int end);
//返回范围是[start,end)的子串;
s.replace(int start,int end,String str)
//将[start,end)范围内的字符串和str进行替换,返回字符缓冲区;
s.reverse();
//将字符串s反转;
 四、关于StringBuilder(可变的字符序列) 1.StringBuilder的构造
StringBuilder s = new StringBuilder();
//无参数构造;
StringBuilder s = new StringBuilder(int I);
//指定容量构造;
StringBuilder s = new StringBuilder(String s_);
//指定字符串构造;
2.StringBuilder的方法
StringBuilder s = new StringBuilder();

s.Capacity();
//返回当前字符串缓冲区的容量;
s.length();
//返回当前字符串缓冲区的实际长度;
s.append(String str);
//向字符串缓冲区内添加字符串str,;
s.insert(int p,String s);
//在第p+1的位置上插入s;
s.deleteCharAt(int Index);
//删除指点字符,返回字符缓冲区;
s.delete(int start,int end);
//删除[start,end)的字符,返回字符缓冲区;
s.substring(int start);
//返回从start开始一直到结束的子串;
s.substring(int start,int end);
//返回范围是[start,end)的子串;
s.replace(int start,int end,String str)
//将[start,end)范围内的字符串和str进行替换,返回字符缓冲区;
s.reverse();
//将字符串s反转;
s.toString();
//将可变长字符串以字符串的形式返回;
3.StringBuilder和String的相互转换

StringBuilder通过toString就可以实现从StringBuilder转换成String。

String可以通过类型转换:StringBuilder(String s)就可以实现从String转化成StringBuilder。

 五、StringBuilder和StringBuffer的区别

在用法上来看其实他们是非常相似的,但实际上还是有差别的StringBuffer是线程安全的,但是StringBuilder是没有线程功能的所以其性能会更高一点。

 六、char类型转化成String类型

String t = String.valueOf(char c); 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/725093.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-26
下一篇 2022-04-26

发表评论

登录后才能评论

评论列表(0条)

保存