String类

String类

  • length()方法

返回字符串的长度

String str="asd";
//返回字符串的长度
int len=str.length();
System.out.println(len)

结果为:

3
  • compareTo()方法

String类中的compareTo()方法将返回两个字符串对象的比较结果,若相等,返回0。不相等时,从两个字符串第1个字符开始比较,返回第一个不相等的字符差;另一种情况,较长字符串的前面部分恰巧是较短的字符串,返回它们的长度差。

String s1 = "abc";
String s2 = "abcd";
String s3 = "abcdfg";
String s4 = "1bcdfg";
String s5 = "cdfg";
System.out.println( s1.compareTo(s2) ); // -1 (前面相等,s1长度小1)
System.out.println( s1.compareTo(s3) ); // -3 (前面相等,s1长度小3)
System.out.println( s1.compareTo(s4) ); // 48 ("a"的ASCII码是97,"1"的的ASCII码是49,所以返回48)
System.out.println( s1.compareTo(s5) ); // -2 ("a"的ASCII码是97,"c"的ASCII码是99,所以返回-2)
  • substring()方法

截取字符串

//第一种方法 substring(int start)
String str="hello world";
System.out.println(str.substring(1));	//ello world!
System.out.println(str.substring(3));	//lo world!
System.out.println(str.substring(6));	//world!

//第二种方法 substring(int start, int end)
String str = "hello world!";
System.out.println(str.substring(1, 4));	//ell
System.out.println(str.substring(3, 5));	//lo
System.out.println(str.substring(0, 4));	//hell

【注意】:第二种方法截取的范围是[ start,end )的半开半闭区间

  • indexOf()方法

indexOf()方法用于在String类的对象中查找子字符串,方法返回一个整数值,为子字符串的开始位置,若存在多个子字符串,返回数值最小的整数值;如果没有找到子字符串,返回-1

String str = "basabcdefghabcklmnabc";
System.out.println(str.indexOf("abc"));  //结果为3,为字符"abc"第一次出现的位置
System.out.println(str.indexOf("qqq"));  //结果为-1
  • lastIndexOf()方法

查找str子字符串最后一次出现的位置

String str = "abcdefghabcklmnabc";
System.out.println(str.lastIndexOf("abc"));  //结果为15,为字符"cde"最后一次出现的位置
System.out.println(str.lastIndexOf("qqq"));  //结果为-1
  • equals()方法

将该字符串与指定对象比较,返回true或false

String s1="aaa";
String s2="aaa";
String s3="bbb";
System.out.println(s1.equals(s2));	//true
System.out.println(s1.equals(s3));	//false
  • trim()方法

返回取出了前后空格的字符串

String s=" aa a ";
//去掉字符串的前后空格
System.out.println(s.trim());

输出结果为:

aa a
  • split()方法

将字符串按照str来分割,分割之后返回一个字符串数组

String str = "张三,李四,王五,赵六";
String[] names = str.split(",");
for (int i = 0; i < names.length; i++) 
{
    System.out.println(names[i]);
}

输出结果为:

张三
李四
王五
赵六

StringBuffer类

StringBuffer类和String类一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和String不同,StringBuffer在进行字符串处理时,不生成新的对象,所以在内存使用上,StringBuffer类要优于String

  • append()方法

append()方法的作用是追加内容到当前StringBuffer对象的末尾,类似于字符串的连接

StringBuffer stringBuffer = new StringBuffer("Hello");
stringBuffer.append("World!");
System.out.println(stringBuffer);

输出结果:

HelloWorld!
  • reverse()方法

reverse()方法将把当前字符序列反转后返回

StringBuffer stringBuffer = new StringBuffer("abc");
System.out.println(stringBuffer.reverse());

输出结果:

cba

StringBuffer对象和String对象互转

StringBufferString属于不同的类型,也不能直接进行强制类型转换,正确的转换方式如下:

String string1 = "Hello World!";
StringBuffer stringBuffer = new StringBuffer(string1);  //String转换为StringBuffer
String string2 = stringBuffer.toString();  //StringBuffer转换为String
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

超霸霸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值