对商品价格进行排序,用intValue不严谨
问题描述:
对商品价格进行排序,用intValue不严谨
尝试过的解决方式:
虽然老师在示例中填写的价格都是整数,但也仅仅是整数的时候结果不会受影响
既然老师定义了价格是double类型的,那么会有一种情况,万一price2-price1 = 0.1,这种怎么办呢,如果用intValue来取浮点数的整数位,那就是等于0,这样的化运行结果就是错误的,我说的对吗
23
收起
正在回答
1回答
同学你好,1. 排序是根据返回的值进行排序的。compare()方法用来比较用来排序的两个参数。方法返回对象.compareTo(参数),在进行排序时,如果两个数比较结果大于0,就把前一个数和后一个数交换,也就是把大的数放后面了。如果比较结果小于等于0,不进行交换。最终形成升序排序。
2. 综上所述,是会出现同学所描述的情况。当price2-price1 差小于1时,则会出现偏差。此时,同学可以需求进行判断。如下所示:
祝学习愉快!
java工程师2020版
- 参与学习 人
- 提交作业 9393 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星