Java 可比界面作业
我真的不明白如何按要求的方式实现这一点。问题是 创建一个实现可比较接口的类Bike。您应该在自行车类别、颜色、价格、制造商、型号和等级中具有以下属性。你应该根据它们的价格进行比较。使用0.0001的公差值进行比较。编写一个主驱动程序,通过创建在控制台收集信息的bikes来测试程序Java 可比界面作业,java,comparable,compareto,Java,Comparable,Compareto,我真的不明白如何按要求的方式实现这一点。问题是 创建一个实现可比较接口的类Bike。您应该在自行车类别、颜色、价格、制造商、型号和等级中具有以下属性。你应该根据它们的价格进行比较。使用0.0001的公差值进行比较。编写一个主驱动程序,通过创建在控制台收集信息的bikes来测试程序 import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; pu
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class Program3 {
public static void main(String[] args) {
Bike b1 = new Bike(300,"red","schwin","mountain crusher",8.6);
Bike b2 = new Bike(500,"black","cassio","road dominator",12.5);
Bike b3 = new Bike(200,"blue","rolex","blue diamond",4.3);
Bike b4 = new Bike(1524500,"silver","military","spy bike",143.2);
List<Bike> bike = new ArrayList<Bike>();
bike.add(b1);
bike.add(b2);
bike.add(b3);
bike.add(b4);
System.out.println(bike);
Collections.sort(bike);
System.out.println(bike);
public class Bike {
private int price;
private String color,brand,model;
private double rating;
public Bike(int price, String color, String brand, String model, double rating) {
this.price=price;
this.color=color;
this.brand=brand;
this.model=model;
this.rating=rating;
}
import java.util.ArrayList;
导入java.util.array;
导入java.util.Collections;
导入java.util.List;
公共课程3{
公共静态void main(字符串[]args){
自行车b1=新自行车(300,“红色”、“施温”、“山地破碎机”,8.6);
自行车b2=新自行车(500,“黑色”、“凯西奥”、“道路主宰者”,12.5);
自行车b3=新自行车(200,“蓝色”、“劳力士”、“蓝色钻石”,4.3);
自行车b4=新自行车(1524500,“银色”、“军用”、“间谍自行车”,143.2);
List bike=new ArrayList();
增加(b1);
添加(b2);
自行车。添加(b3);
增加(b4);
系统输出打印(自行车);
收集。分类(自行车);
系统输出打印(自行车);
公共级自行车{
私人int价格;
私人串颜色、品牌、型号;
私人双重评级;
公共自行车(国际价格、字符串颜色、字符串品牌、字符串型号、双重评级){
这个。价格=价格;
这个。颜色=颜色;
这个。品牌=品牌;
这个模型=模型;
这个。评级=评级;
}
}可比较的
接口包含一个方法:compareTo()
。此方法返回一个int
,描述一个对象与另一个对象的比较方式
它通常用于对将调用此方法的对象集合进行排序,因为返回的int
值将告诉调用者这两个对象所属的顺序
如果compareTo
方法返回负数,则调用该方法的对象位于用作参数的对象之前。如果compareTo
返回负数,则调用该方法的对象位于该对象之后。如果compareTo
返回0,则认为对象相等,且顺序相同没关系
你的作业要求你实现Comparable
并重写compareTo
方法,以便按价格对Bike
类的对象进行排序。给定价格为两美元的bikeA
,价格为三美元的bikeB
:
bikeA.compareTo(bikeB) //should return negative
bikeB.compareTo(bikeA) //should return positive
bikeC.compareTo(bikeB) //should return 0
Comparable
接口包含一个方法:compareTo()
。此方法返回一个int
,描述一个对象与另一个对象的比较方式
它通常用于对将调用此方法的对象集合进行排序,因为返回的int
值将告诉调用者这两个对象所属的顺序
如果compareTo
方法返回负数,则调用该方法的对象位于用作参数的对象之前。如果compareTo
返回负数,则调用该方法的对象位于该对象之后。如果compareTo
返回0,则认为对象相等,且顺序相同没关系
你的作业要求你实现Comparable
并重写compareTo
方法,以便按价格对Bike
类的对象进行排序。给定价格为两美元的bikeA
,价格为三美元的bikeB
:
bikeA.compareTo(bikeB) //should return negative
bikeB.compareTo(bikeA) //should return positive
bikeC.compareTo(bikeB) //should return 0
Comparable
接口包含一个方法:compareTo()
。此方法返回一个int
,描述一个对象与另一个对象的比较方式
它通常用于对将调用此方法的对象集合进行排序,因为返回的int
值将告诉调用者这两个对象所属的顺序
如果compareTo
方法返回负数,则调用该方法的对象位于用作参数的对象之前。如果compareTo
返回负数,则调用该方法的对象位于该对象之后。如果compareTo
返回0,则认为对象相等,且顺序相同没关系
你的作业要求你实现Comparable
并重写compareTo
方法,以便按价格对Bike
类的对象进行排序。给定价格为两美元的bikeA
,价格为三美元的bikeB
:
bikeA.compareTo(bikeB) //should return negative
bikeB.compareTo(bikeA) //should return positive
bikeC.compareTo(bikeB) //should return 0
Comparable
接口包含一个方法:compareTo()
。此方法返回一个int
,描述一个对象与另一个对象的比较方式
它通常用于对将调用此方法的对象集合进行排序,因为返回的int
值将告诉调用者这两个对象所属的顺序
如果compareTo
方法返回负数,则调用该方法的对象位于用作参数的对象之前。如果compareTo
返回负数,则调用该方法的对象位于该对象之后。如果compareTo
返回0,则认为对象相等,且顺序相同没关系
你的作业要求你实现Comparable
并重写compareTo
方法,以便按价格对Bike
类的对象进行排序。给定价格为两美元的bikeA
,价格为三美元的bikeB
:
bikeA.compareTo(bikeB) //should return negative
bikeB.compareTo(bikeA) //should return positive
bikeC.compareTo(bikeB) //should return 0
首先,价格应该是双倍的,评级应该是整数。看起来你又赢了