java基础系列(十四)

1.前言

        上一讲,我们提到了String类,还记得我们看过的底层代码吗?String的实质是一个final修饰的char数组,那么这样的字符串每一次改变都需要变动大量的内存,这对于有频繁修改需求的人来说非常的不友好,那么有什么东西可以解决这个问题吗?答案是有的,StringBuffer和StringBuilder这两个可变字符串。

2.StringBuffer

        StringBuffer是一种可变的字符序列,可以对字符串进行增删改,底层是继承了父类中的一个byte类型的数组。      

        其创建格式为:StringBuffer str = new StringBuffer();

        有人会问了,既然都是字符串,String和StringBuffer之间能不能相互转化呢?答案是可以的:                 String转为StringBuffer只需要在创建的时候将String传入StringBuffer的构造器中,StringBuffer转为String只需要使用Stirng的toString方法。

        当然,String转为StringBuffer也有另外的一种方法append(),这个方法其实是我们的添加方法,我们对StringBuffer的“增”就来自于此。                 好了,让我们来介绍有关增删改查的相关方法吧:

        增:append

        删: delete(start,end),从第几位删除到第几位,左闭又开

        改:replace(start,end,string),从第几位修改到第几位,用string去代替

        查:indexof(string)查找子串在串中第一次出现的位置

        

         

 3.StringBulider

        StringBuilder和StringBuffer的使用方法是一致的,这里就介绍一些不一样的地方,StringBuilder是线程不安全的,StringBuffer是线程安全的,所以StringBuffer修改的效率会比StirngBuidler高,至于线程安全是什么,大家暂时还不需要了解。

4.Math

        讲完了字符串类型,我们来说一下常用的数学方法,这些数学方法都包含在一个类中,这个类叫Math,由于都是所见即所得的东西,我也不多说了。直接记住就好:

                

         

         使用方法都是Math.方法

        对于random我要多说一嘴,这个随机的量是在【0,1)这个区间中,如果你想要取得在某两个整数【a,b】中的随机值,需要用到公式:a + Math.random() * (b - a + 1) 

5.结语

        今天的内容就到这里了,谢谢观看。     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值