请帮我解释一下这两种不同写法的区别在哪里?arg1.getName().compareTo(arg0.getName()); 问题看下面:第一种是下面这样:...public int compare(Person arg0,Person arg1)\x05{\x05\x05int result = arg0.getName().compareTo(arg1.

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 06:58:55
请帮我解释一下这两种不同写法的区别在哪里?arg1.getName().compareTo(arg0.getName()); 问题看下面:第一种是下面这样:...public int compare(Person arg0,Person arg1)\x05{\x05\x05int result = arg0.getName().compareTo(arg1.
xTMOQ+鈋 馛.QC"AL0TP>Z+bu̻ofV oNk4it13s;% xo|4D4zEV4QӐMAH[k4H|!xjd441$MG.4>3 _θpp?BID7^oHt^$Iqa2nP]/ٙx*yBٹU8cw|WXwĊtGNNׂ'x܎M'{B\(`s={r [6u/8f7ٜ4j:$ϋ{NgĴ-+#N2mnzT\g$[WkGxR"nc6(D 4UDUnS x^ rQ?u O8pwhw9B^i@cUX;5Gڪd⃲2,} ޡk'r9!VDEPFc3 gCh !Έ iŌǑ yp@si)Kۖ2e-_:/s?hȽrͻy"v#Eyl%-"{U^*!3wp 7 gK4SOƗMe}VD;.AЭM"ƂjV-w tb^aYpZ!gE`t!2/SYynȐfwtPϊK86zy(mcc@͚!3 1jz2"S;#Dpܻm6 G(C5M%rL%P 9 on*pa:8\BG ]n\

请帮我解释一下这两种不同写法的区别在哪里?arg1.getName().compareTo(arg0.getName()); 问题看下面:第一种是下面这样:...public int compare(Person arg0,Person arg1)\x05{\x05\x05int result = arg0.getName().compareTo(arg1.
请帮我解释一下这两种不同写法的区别在哪里?arg1.getName().compareTo(arg0.getName()); 问题看下面:
第一种是下面这样:.
.
.
public int compare(Person arg0,Person arg1)
\x05{
\x05\x05int result = arg0.getName().compareTo(arg1.getName());
\x05\x05if (result == 0)
\x05\x05{
\x05\x05\x05return arg0.getID() - arg1.getID();
\x05\x05}
\x05\x05return result;
\x05}
.
.
.
第二种是这样:
.
.
.
public int compare(Person arg0,Person arg1)
\x05{
\x05\x05int result = arg1.getName().compareTo(arg0.getName());
\x05\x05if (result == 0)
\x05\x05{
\x05\x05\x05return arg0.getID() - arg1.getID();
\x05\x05}
\x05\x05return result;
\x05}
.
.
.
这两种有什么区别?不同样是比较两个相同的吗?特别是比较那里,搞不明白变了顺序之后为什么结果就不同!

请帮我解释一下这两种不同写法的区别在哪里?arg1.getName().compareTo(arg0.getName()); 问题看下面:第一种是下面这样:...public int compare(Person arg0,Person arg1)\x05{\x05\x05int result = arg0.getName().compareTo(arg1.
这问题我关注了好几天了.我也想知道答案,好像确实没有人知道啊.我觉得这取决于.compareTo这个函数是怎么写的,可能的区别也就是.compareTo对于arg1和arg0对象采取的不同的操作,再比较两者的值.
比如说,如果x.getName().compareTo(y)函数,在比较x和y之前,对x判断是否为负数,如果是负数,那就直接把result赋1,如果不是,再比较两者的大小.
这样一来,如果arg0<0,arg1>0,那么,arg0.compareTo(arg1)=1,因为arg0<0.但反过来,arg1.compareTo(arg0)=0,因为arg1>0,而且arg1!=arg0.
当然,这里只是举了个简单的例子,实例中的getName()的返回值应该是一个字符串,实际的compareTo对于x的预操作,也应该更复杂.仅供参考~有问题随时追问哈.