如何转换此表达式: (i1,i2) -> (int) i1 - (int) i2 从int到double值。我试过这个: (i1,i2) -> (double) i1 - (double) i2 ,这是错误的。请帮忙。谢谢。
(i1,i2) -> (int) i1 - (int) i2
(i1,i2) -> (double) i1 - (double) i2
uyto3xhc1#
这个表达式(i1,i2)->(double)i1-(double)i2返回一个double。比较器必须返回整数。解可以是(i1,i2)->(int)math.signum(i1-i2),例如list l=list.of(3.4,9.3,5.54);l、 排序((i1,i2)->(int)math.signum(i1-i2));注意,(i1,i2)->(int)(i1-i2)不起作用,因为小的数字被舍入为零。
1条答案
按热度按时间uyto3xhc1#
这个表达式
(i1,i2)->(double)i1-(double)i2返回一个double。比较器必须返回整数。解可以是(i1,i2)->(int)math.signum(i1-i2),例如list l=list.of(3.4,9.3,5.54);l、 排序((i1,i2)->(int)math.signum(i1-i2));
注意,(i1,i2)->(int)(i1-i2)不起作用,因为小的数字被舍入为零。