String类中的一些常见方法及其用法

1.创建字符串String
char a[]={'g','o','o','d'};
String s=new String(a);
等价于String s=new String("good");
2.连接字符串
String s=1+2+3+'a'+"b";   //等价于(s=103b;)
String s=1+2+3+"b";         //等价于(s=6b;)
String s=1+"b"+2+3;         //等价于(s=1b23;)
String s=1+2+"b"+3;         //等价于(s=3b3;)
3.获取字符串长度str.length()
String str="We are students";
int size=str.length();
4.字符串查找str.indexOf 、str.lastIndexOf();
String str="We are students";
int size1=str.indexOf("a"); //变量size1的值为3
int size2=str.lastIndexOf("e"); //变量size2的值为11
5.获取指定索引位置的字符str.charAt()
String str="Hello Word";
Char c=str.charAt(6); //变量c的值为 W;
6.valueOf
valueOf(int i)
返回 int 参数的字符串表示形式。
该表示形式恰好是单参数的 Integer.toString 方法返回的结果
int 参数的字符串表示形式。
int i = 10;
String str = String.valueOf(i);
这时候 str 就会是 "10"
7.获取字符串str.substring()
String str="Hello Word";
String sub1=str.substring(3); //变量sub1的值为 lo Word
String sub2=str.substring(0,3); //变量sub1的值为Hel
8.去除空格str.trim()
String str=" Java class ";
String len=str.length(); //变量str的长度是18
String trim=str.trim().length(); //变量trim的长度是12
9.字符串替换
String str="address";
String newstr=str.replace("a","A"); //字符串str中的字符"a"替换成了"A"
10.判断字符串的开始与结尾,并且返回boolean
str.starsWith(String prefix); //prefix是指作为前缀的字符
str.endsWith(String suffix); //suffix是指作为后缀的字符。
11.判断字符串是否相等
str.equals(String otherstr); //str、other分别是参见比较的字符串 对象是否相等,不能忽略两个字符串的大小写。
str.equalsIgnoreCase(String otherstr); //str、other分别是参见比较的字符串 对象是否相等,并且忽略了两个字符串的大小写。
12.按字典顺序比较两个字符串
str.compareTo(String other) //str、other分别是参见比较的
字符串对象,compareTo()方法只有在equals(object)方法返回true时才返回0。
对于字符串只比较第一个不相等的字母。列如str="a",other="d"时返回-3,
str="d",other="a"是返 回3
13.字母大小写转换
str.toLowerCase() //str是要进行转换的字符串,该方法是将
字符串中的所有字符从大写字母改为小写字母
str.toUpperCase() //str是要进行转换的字符串,该方法是将
字符串中的所有字符从小写字母改为大写字母
使用str.toLowerCase()方法,str.toUpperCase()方法进行大小写转换时,数字或
非字符不受影响
14.字符串分割
str.split(String sign) //sign为分割字符串的分隔符,也可以是正则表
达式
str.split(String sign,int limit) //sign为分割字符串的分隔符,也可以是正则表
达式 limit:限制分割的次数,一旦次数符合要求便不再分割。
15.日期和时间字符串格式化
Date date=new Date(); //创建Date对象
String s=String.format("%te",date)
具体需要查看String.format的语法规则
16.常规类型格式化
String str=String.format("%d"400/2); //将结果以十进制格式显示。
String str2=String.format("%b",3>5); //将结果以boolean型显示。
String str3=String.format("%x",200); //将结果以十六进制格式显示。
17.字符串生成器
  • append(content) //其中,content表示要追加到字符串生成器中的内
容,可以是任何类型的数据或者其他对象。
StringBuilder builder=new StringBuilder("");
for(int i=0;i<10;i++){
builder.append(i);
} //结果为0123456789
  • insert(int offset,arg);
offset:字符串生成器的位置。该参数必须大于等于0,且小于等于此序列的长度
arg:将插入字符串生成器的位置。给参数可以是任何的数据类型或其他对象
StringBuilder bf=new StringBuilder("hello");
bf.insert(5,"word");
System.out.println(bf.toString()); //此时输出信息为helloword
  • delete(int start,int end)
start:将要删除的字符串的起点位置。
end:将要删除的字符串终点位置。
StringBuilder bf=new StringBuilder("StringBuilder ");
bf.delete(5,10);
System.out.println(bf.toString()); //此时输出信息为Strinder
18.StringBuilder 与 StringBuffer的用法
  • 如果在程序中频繁的附加字符串,建议使用StringBuilder。新创建的
StringBuilder 对象初始容量是16个字符,可以自行制定初始长度。如果附加的字
符超过可容纳的长度,则StringBuilder 对象将自动增加长度以容纳被附加的字符
。若要使用StringBuilder 最后输出字符串结果,可使用toString()方法。利用
StringBuilder类中的方法可动态的执行添加、删除和插入字符串的操作。
  • StringBuffer一个可变的字符序列。此类提供一个与 StringBuffer 兼容的API,
但不保证同步。该类被设计用作 StringBuffer 的一个简易替换,用在字符串缓冲
区被单个线程使用的时候(这种情况很普遍)。如果可能,建议优先采用该类,因
为在大多数实现中,它比 StringBuffer 要快。将 StringBuilder 的实例用于多个
线程是不安全的。如果需要这样的同步,则建议使用 StringBuffer
  • StringBuffer:构造一个其中不带字符的字符串缓存区,起初是容量为16个字符
StringBuffer 上的主要操作是 append 和 insert 方法,可重载这些方法,以接受
任意类型的数据。每个方法都能有效地将给定的数据转换成字符串,然后将该字符
串的字符追加或插入到字符串缓冲区中。append 方法始终将这些字符添加到缓冲
区的末端;而 insert 方法则在指定的点添加字符。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值