Java基础知识小清单(二)

本文详细介绍了Java中String类的常用方法,如charAt(), startWith(), endsWith(), equalsIgnoreCase(), toCharArray(), valueOf(), replace(), split(), substring(), trim()等,并深入探讨了StringBuffer类的使用方式及与String类的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文为续二,重点讲述Java基础中的字符串知识

String类的常用方法

  • charAt()

这里写图片描述

这里写图片描述

  • startWith()和endsWith()

这里写图片描述

这里写图片描述

  • equalsIgnoreCase()

这里写图片描述

这里写图片描述

  • toCharArray(),valueOf()

这里写图片描述

这里写图片描述

  • String(char[] value)

这里写图片描述

这里写图片描述

  • indexOf()方法

这里写图片描述

这里写图片描述

length(),切记length是针对数组来说,String是对象所以要用方法

public class StringDemo3 {
    public static void main(String []args){
      String str="abcdef";
        System.out.println(str+"的长度 "+str.length());
    }
}

这里写图片描述

replace()

public class StringDemo3 {
    public static void main(String []args){
      String str="abcdef";
        System.out.println(str+"将其中的ab替换成AB\n"+str.replace("ab","AB"));
        System.out.println(str+"将其中的a换成A,f换成F\n"+str.replace("a","A").replace("f","F"));

    }
}

这里写图片描述

split()

这里写图片描述

这里写图片描述

substring() ,切记0则是直接返回原对象,非0则是new一个新对象返回

这里写图片描述

这里写图片描述

trim()

这里写图片描述

这里写图片描述

StringBuffer类

如果需要静态的使用字符串,string类是一个好的选择,但若是需要经常的修改字符串则宜使用StringBuffer类

创建StringBuffer对象

StringBuffer 对象名=new StringBuffer("字符串内容");

没有String类那样可以直接赋值,只能通过new出来,这意味着String Buffer对象位于堆上,而不是常量区。

StringBuffer的方法和String很像,但也有一些小小的不同

  • 连接字符串

String可以使用+ ,而 StringBuffer 只能使用append()方法

public class StringDemo3 {
    public static void main(String []args){
        StringBuffer str=new StringBuffer("123");
        str.append("abc");
        System.out.println(str);
    }
}

这里写图片描述

insert()
这里写图片描述

这里写图片描述

  • delete()

这里写图片描述

这里写图片描述

deleteCharAt()

这里写图片描述

这里写图片描述

  • setCharAt()

这里写图片描述

这里写图片描述

reverse() ,只有StringBuffer才有的

public class StringDemo5 {
    public static void main(String []args){
        StringBuffer str=new StringBuffer("java");
      System.out.println(str.reverse());
    }
}

这里写图片描述

StringBuffer是没有重写Object类的equals方法,所以只能通过toString()方法将StringBuffer内容转换为String字符串,再使用equals方法

这里写图片描述

这里写图片描述

  • capacity()

String Buffer中的容量很有趣,值得好好研究一下。

StringBuffer默认初始容量的字符串缓冲区大小为16字符,但是不同的StringBuffer对象拥有不同的容量,String Buffer类提供了capacity()方法获取对象的容量。

这里写图片描述

这里写图片描述

capacity()方法返回的是String Buffer变量的容量(和length()是不一样的),在创建StringBuffer对象时,没有指定容量的大小,系统会默认为16字符的容量,就像str1 一样;
若指定了容量大小,那就是多少,就像str2一样;
若指定容量大小后又修改字符且修改后大于其指定容量,那么修改后的容量大小为:(容量+1)*2 ,就像str3
若指定容量大小后又修改字符且修改后大于其指定容量也大于修改后的容量大小(容量+1)*2 ,那么容量就等于字符串的长度,如str5,指定是5,修改后为(5+1)*2 =12,依然小于13,故容量直接为13;
若直接使用字符串创建StringBuffer变量,则容量大小为16+字符串长度,如str4

小结

Java基础知识小清单就到此为止了,本次的重点是为了梳理一直以来模糊不清的String和String Buffer之间的关系,总体来说还是比较完美的,马上就是平安夜了,苹果也已经准备好了,现在就差开吃了,找个时间再写一下年终总结吧,下周估计是没有什么时间了。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值