00:00
接下来呢,我们开始啊,讲真正的这个分组排序啊分。那就要定义这么一个类,那这个分组排序呢,它有相应的这个步骤,步骤在哪呢?在这。你要实现一个分组排序,你要按照这几个方式去做第一件事情。哎,自定义类继承readable comparable。之前我说都是实现的。这地方,记住它是继承。然后要要求重写它的compare方法。Compare方法里面呢,选择这个write,因为它里面至少有三个。比较。然后这里面是详细的业务逻辑。啊,详细的业务逻辑啊,比较的业务逻辑就是你按照什么条件去比较,那比如说我们这里面是不是只要让它ID相同,就可以认为是一个对象。哎,让他虚拟为一个对象,重新对这个对象进行一个排序。
01:04
那下面呢,这里面要注意一个什么呢?创建一个构造,将比较对象的类要传给这个它的父类,要给它负类,因为它比较的是对象,它负类,如果说不清楚你比较的是哪一个类的话,那肯定会报类型转换异常的。那之后呢,这里面还要传一个处,那为什么传一个处,一会儿呢,带大家去看一下源码。啊,因为不传错的话,他会给你报一个控指针,因为它直接将对象都置为了控。啊,这是这块哈。那这个分组排序在什么位置上,我大家看过。是不是就在reduce端?这个位置一定记住哈,是在端这个位置。对传过来的数据进行再一次的。分组排序。将我们这个B对象里面,哎,只要ID相同的就给它放到。一个组里面去,目的是为了让他能进入到。
02:01
一个方法。我们来实现一下。聊这创建一个类。一类啊。那这里面要注意了啊,它是继承,并不是实现之前我们写的这个。B对项是不是都是实现的,哎,实现它不是它是继承啊拿过来,那他继承什么呢。格鲁比。第一个不是他,不是他。来看一下啊,不是那个啊在这呢。啊,包包是吧,是的。
03:04
那行,那就记着他。那这里面打个包搞定,那你发现这里面。没有任何反应。哎,不需要你去重写的任何方法是吧,哎,刚往这一放,那肯定不行。怎么办呢?哎,你打一个compare,就你发现这里面有一个compare,比较这么多,另一个呢,是比较两个对象,哎第三个呢,是比较able comparable。一个A,一个B。一个AB好进来。到这儿之后干什么呢?要求。按照。嗯,要求只要ID相同。就认为。
04:02
那怎么实现呢?很简单啊,先定一个这个返回值是这样的。Eve。一步之前,先把这两个对象给我转换了。这是一个吧。最终我们要比较的什么呢?是order b啊。AB等于A。它这个类型一定是这个。为什么这么说?你看你的map输出是什么?是不是就是奥特B呢?哎,奥特bin,这个奥特in,最终它会经过这个地方传进来。啊,一站你就知道了啊,他传过来就是这个奥德in的两个对象,一前一后。啊,你说第一个,第二个他是这样的。传进来的,你不都是这个逼对象吗啊。质数是纳,然后另一个并对象又一个。所有的都是这种数据。那么这个是A强转一下,转换成奥利。
05:02
括号的加下,这呢是B。对B这么两个对象,然后呢,就是A对象的。叫什么呢?点get。ID。就比两对向导在地,如果它的大于B的。呃,b.B点2D。那么这个result等于多少呢?是不是正序啊,RZID是不是还是正序啊?哎,那正序就是一。是衣服吧?If ab.get OD,它小于。点get。那么这个result就等于。
06:03
你要光这么比较没用,最后一定要加一个。相等的,也就是说else result。想一想啊,看一看啊。什么情况下每兆的访问领?哎,是不是只要它两个ID相等就能返回零啊,没有判断价格吧,只要它返回的是零,那就说明返回的就是。那处的话,它就会将这组数据放到同一个。研究方法里面去。啊,记住啊,它只要返回零,那就认为比较成功啊,是处。那错的话,他就会将这两个对象数据认为是一组传递到后面的。里面去。啊,这个里面去。那回来回到这个。正常情况下,你这么写完肯定不行,要求要写一个它的口罩。
07:14
在里面呢,写上一个。传进去一个类,当前你这个比较的是谁,那就将这个类对象。之后后面还要传一个醋,那为什么要传to呢?下面我来看一看啊,看一下它源码来进。修进来之后,这里面传进来,我们传进两个参数,一个是比较的这个class类,另一个呢是create创建实例对象,接下来呢,它将这两个参数分别调了这个方法,对吧,这个故障吧,啊三个参数的故障点。数据台。那它呢,第一个是我们传进来的class是他吧,要比较的是不是这个就是我们要。写的是true还是false?你看它这地方是处的吧。是不是创建了这个K对象,那如果他不是处,你看干什么呢。
08:05
它是不是将所有的值全部制成为空了,哎,你可以自己试一下,它直接就报空指针异常啊,一会我们可以演示一下哈。OK,那这是这个构造为什么要创建的原因在这儿,就在这。那现在这个比较就是分组排序写完了,跟我们当前那个job有关系吗?怎么样的产生关系呢?要设置一下那个这行代码。你要将它跟你当前这个Java产生联系。这样就实现了这个。分组排序好,那我们再一起一下看一下效果。的一没问题,走。
09:04
咨询完了看一下效果。是不是只把这个最大值输出来了,哎,这样呢,就实现了这个效果啊,实现这个效果。
我来说两句