00:00
好了,同学们,我们接下来来讲一下这个叫做BY的这个方法啊,那这个BY呢,顾名思义啊,它就是说根据指定的规则对我们的数据呢进行排序,这个在skyla的集合当中其实也有这个方法,对吧?嗯,咱们一块来看一看。嗯,把这个呢,我们拷一下啊,咱们来写上一个12,嗯,好,然后呢,拷贝一下点击OK,然后呢把名称给它稍微换一换啊。呃,首先这里呢,我们来啊,咱们写上一个,它是排序嘛,所以咱们把这个顺序颠倒一下,比方说四啊,给它一个三,嗯,OK,然后呢,这个写成一个五,嗯,写上一个五,嗯,好了啊,然后这边写上一个六,这写上个一啊把顺序呢,我们稍微的调整一下,然后呢,我们在这里呢,咱们这样啊,把这个呢我们全去掉,咱们不要了,嗯。呃,不要了,以后这个呢,我们改成一个叫做,嗯,那么我们的RDB拷贝过来点咱们叫BY,这个BY呢,就是根据指定的规则啊来进行排序,那比方说我们说了啊,咱们当前的每个数据呢,是一个我们的number,那我就按照我们的number来进行排序,对吧?诶,我就这么写就可以了啊好,然后呢,我们点一下VAR回车,这是我们的short r DD,好,或者说我们写个new r DD,其实也可以啊,这都无所谓,然后呢,我们给它输出到咱们的这个位置来,所以咱们看确认一下哦,这边已经有了,给它删掉。
01:35
删掉了以后,现在呢,我们来进行啊,我们运行查看一下,看一看我们的这个排序的内容,那我这个排序啊,我为什么没有在控制台上打印呢?这里我们要说明一件事情,就是我们的这个sort by啊,它默认情况下分区数量它也是不变的啊,但是呢,它不变是不变,因为你把顺序调整了嘛,你数据就会被打乱,重新组合,所以它的底层是应该有杀的概念的,对吗?同学们这个能不能明白,所以呢,我们打开,打开以后他们看两个分区,分区数量是没有变的,最开始两个分区,现在还是两个分区,以前呢是624,如果要是我们两个分区的话,他们应该是在一个分区当中,我们的五三一应该在一个分区当中,对不对,现在打开,打开以后123在一个分区,然后呢,我们456在一个分区,这样的话,数据是不是就有序了啊,它就有序了,所以啊,这个就是我们所谓的short啊,就是这样。
02:33
但是呀,我们现在这么演示际有点太简单了啊,咱们再给大家去看一看,来咱们拷贝一下,拷贝以后呢,写上一个一,然后呢,来点击OK啊,然后放过来,把这个数据呢,我稍微的变一变,比方说呢,来我们写上一个,诶,别写字符串了,咱们写个嗯,咱们叫ta吧,嗯,Tale呢,我们写上一个A啊写上一个,写上个一啊,写上一个一,然后写上一个嗯,我想想啊,就写上一个一,哎这么写吧。
03:00
好。然后写上一个我们的幺幺啊,然后写上个一个二,嗯,好,然后写上一个二,然后写上一个三来,咱们这么写啊,我随便写的啊,行,那我们现在呢,准备呢,去进行什么我们的排序了,但是咱们这个排序啊,我是按照什么呢?我按照咱们的T来排,就是我们的这个的一个就是我们的对不对,所以啊,大家可以发现我们现在是个,然后呢,我们的第一个来排,第一个就是字串嘛,那么按照字串来排的话,它这里应该是什么?我们字典的顺序对不对啊,从小到大是个升序,所以呢,我们来new r DD,嗯。翻过来,翻过来以后呢,咱们这就不看那个分区了,咱们直接点啊,咱们这边写上一个叫做collect,嗯,然后点我们的for it啊,咱们的for it。好,我们现在来运行一下,看结果啊。那么按照我们的字典顺序的话,记住啊,这个样有点特殊了,哪哪特殊了呢?我们的幺幺它是个字符串,那么字符串的话,它会先比较第一个我们的字符,那么一和二比较肯定是一小嘛,所以这个时候一它是放在前面的,所以即使你看着好像这个一呢,它比二大,是不是看着好像是大,因为你会我会当成数字嘛,但是其实还是一在前,所以大家可以得到一一在前啊就是这样,那好了,那我现在呢,比方说诶,我想把它变成数字来看一下我们点,咱们叫做什么呢?A to in。
04:32
咱们叫做to int,你这么写完了以后,现在你再运行记住就不一样了,为什么不一样了呢?是因为你把这个字符串啊变成数字来排列大小,那么这个幺幺它的从数字的角度来讲肯定比二要大,对不对?那所以它就应该排在后面,所以呢,它的顺序应该是我们的一二和幺幺,所以啊,它应该是这样的一个顺序啊,所以呢,我们可以自己根据规则来调整顺序,大家看1211对不对?诶就是这个意思啊,当然了,你想怎么排就怎么排,诶老师,那能不能我们降序排列呀?诶没问题,在我们的学习当中,盖LA集合的方法呀,它里面其实是需要传我们的函数可理化来传递那个降序的操作的,但是我们这个sort by就比较简单了,为什么呢?它有第二个参数,第二个参数呢,诶,你写上一个false,默认情况下它是升序,但是你加上个false,它就是降序了,所以我们在这里稍微的补充一下。
05:30
我们sort by啊方法它可以呢,诶可以啊,根据啊,咱们叫根据指定的规则,对我们数据源啊中的数据,它进行我们的排序,默认为我们的声序啊,默认为我们的声序,嗯,那么第二个参数啊,第二个参数可以改变排序的方式,改变排序的方式,诶就是这样的啊然后嗯,它默认情况下,默认情况下,嗯情况下它不会啊改变分区,所以分区的数量是不变的,但是呢,我们说它的中间啊,它存在我们的杀浮操作。
06:12
啊,那肯定的嘛,你的数据被打乱,重新组合,重新调整它的顺序了,对不对,OK,咱们再来看一看啊运行一下,嗯。因为你是我们的降序了嘛,那么所以呢,我们的这个幺幺应该在前是吧,然后二和一在后,应该是这么个顺序啊好了。
我来说两句