【字幕】恋上数据结构与算法之019动态数组07打印数组

是吧?什么意思呢?你看啊我们刚刚已经加了三个东西了,我现在希望能够打印一下这个速度,希望能把它里面所有元素打出来,那我们试一下,看它默认是怎么打,这个时候我们右击你会发现它打出来长这样子,因为这个Java里面打印一个对象,默认就是把它的这个呃这个类名打出来对吧?

它是这样打的,那我们其实我们是希望打印这个数组的时候是能打出里面的东西啊,那怎么办呢?是这样子的。

在Java里面你想打印一个对象的时候,它其实本质上是调用它一个叫toss菌,调用它一个toss菌的一个,所以toss菌返回什么它就打印什么。默认的toss菌的实现其实就是返回一个类名,啊返回一个内里那怎么办呢?那我们就可以在这个位置去自定义一下自己的打印对吧?那怎么办?在这里我们来突袭来投资军是不是就可以了?

你看比如说举个例子,那如果我们在我们这个呃类似的兔子菌返回一个字母上给他,啊比如说我们返回123,那也就意味着到时候他打印我这个list,他调我这个to b的时候,我就返回123给他,他打出来就是123,那这个时候我们可以右击,你看123对吧?

但是我希望打什么?打里面的元素,那就简单了,那就简单对吧?那这个时候我们是不是只需要将里面的元素进行拼接一下就好了,对吧?那在Java里面如果做大量的字符串拼接的话,其实建议大家使用什么呢?建议建议大家使用这个什么呢?啊这个讯标的讯标的啊讯飞的那是准备的,用它来拼接奏章会效率比较高,啊那这个时候我们可以在这里面来一个数据的,好,然后拿到是军标的,最后呢是军标的,再调用一下投资军,这样的话使军标的就会转成一个死菌,因为我们这个头子菌是要求返回死菌的,不能返回死菌病的,那死菌病的拼接完之后呢,我们再调用一下兔死菌,它就可以返回它拼接的这个字母上。

好,那怎么去拼接呢?这样子我希望最后拼接成这样一个格式。

比如说打印出来数组是这样,99 88 77对吧?我希望打成这样子。

并且呢我希望最前面还写一个size等于多少,比如说size等于3,对吧?我希望最后打打出来这个效果呢,假设我希望是这样子的,我希望是这样子,唉这个密一点吧好,那怎么办呢?那其实很简单,这个时候我们只需要string,然后点什么呢?点open对吧?Open它有个拼接啊有个拼接,好,那拼接这里怎么写呢?这里其实我们就直接是size等于多少对吧?

然后后面呢我们再进行拼接,拼接什么拼接我们这个size,大家想想那这样一拼接是不是就是size等于多少就拼起来了,对吧?

那这个时候呢我们再来拼一下,再来拼一下,那这个时候我们再拼什么呢?再拼一下这个逗号,对吧?空格,因为我们这里是有个逗号空格,然后我们再把这个中括号给拼一下,这个时候我们在这个位置来拼一下啊,对吧?然后最后面肯定也有中括号,所以在最后的时候,最后的时候肯定也有一个这个中括号,那肯定是这样子。

好ok,那我我那我们先来看一下这个效果吧,我们跑一下你看这样子是吧?那就是它中间的这个元素了啊。那你看现在打印出来是三,那说明刚刚我们这个size的计算是没有问题的,那中间这个怎么做的很简单,其实我们写个后循环,因为大家都是有有经验啊,很多同学都有开发经验,所以我这里就写简单一点就可以了。

好那这里怎么做呢?这里其实就是直接来个s菌啊判,那这个时候直接是Alex,Alex对吧?然后呢I是把这个位置的元素给拼起来对吧?而且拼完之后呢我们这里应该是直接来个判,然后假设我们这两个逗号空格吧,好我们先这样写,就每一个元素后面都有个逗号空格是吧?

然后然后我们直接点一下这个位置,唉可以发现没问题是吧?但是最后一个元素大家想想最后一个元素这个东西是不需要的,所以这个东西不是每一次都需要拼接,所以这个时候我们可以这样做,如果这个I I不等于对吧?I不等于什么呢?Size减一,说白了它不是最后一个元素,只要你不是最后一个元素,我才需要进行这么一个拼接。

那这个时候我们应该是直接使劲点派好,这样就可以了,那这个时候我们再点一下,好,这个没有问题,对吧?这这个是一种方法,听了同志们还有一种方法,还有一种方法,其实你可以怎么还有换一种思路,怎么换一种思路呢?可以不用这么写,就是你看啊我们可以这样子,只要你不是被零的元素,我就先在你前面拼接一个这个逗号空格,然后我再拼接你。

唉只要你不是第零个元素,我就先在你前面拼接一个逗号空格,然后我再拼接你,这也是一种方案,相当于是在前面唉不等于0,然后我们再拼接一下,这也是可以的,那这个时候我们运行一下,好,那如果是我我选哪种啊?

我选择上面这种,为什么你思考一下为什么为什么我选择上面这种?

不选下面这种,因为下面这个他还要做一个减法运算,还做一个减法,我上面这个不用做减法,直接不等于你这个还不等于size减一,还做一个减法运算,多浪费啊。我们不减对吧?不用减,所以我我肯定会采取这种方式啊。呃这是为一个细节啊,这是一个小细节,好,那同学们这样就可以了,那打印速度呢我们就暂时搞定啊。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值