Java 可比界面作业

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

我真的不明白如何按要求的方式实现这一点。问题是

创建一个实现可比较接口的类Bike。您应该在自行车类别、颜色、价格、制造商、型号和等级中具有以下属性。你应该根据它们的价格进行比较。使用0.0001的公差值进行比较。编写一个主驱动程序,通过创建在控制台收集信息的bikes来测试程序

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

首先,价格应该是双倍的,评级应该是整数。看起来你又赢了