所以我有一个项目来编写一个程序,该程序接受有关钻石的信息并进行比较。这是提示的相关部分:
compareTo() 方法是这样编写的,因此钻石首先按胡萝卜排序,然后按净度或颜色排序,以对特定钻石更好的为准。由于有 23 个颜色等级,但净度只有 11 个等级,所以将前两个颜色等级视为与一级净度等级相同,后两个颜色等级与二级净度等级相同,以此类推. 为了清楚起见比较代码,您将需要一系列 if 语句。
我错过了关于接口的讲座和 compareto() 的东西,但是看着讲义我隐约明白了。这是我到目前为止得到的:enter code here
public class Diamond {
String stockNumber;
double carot;
String clarity;
char color;
String cut;
public Diamond(String startStockNumber, double startCarot, String startClarity, String startCut) {
stockNumber = startStockNumber;
carot = startCarot;
clarity = startClarity;
cut = startCut;
}
String getStock() {
return this.stockNumber;
}
double getCarot() {
return this.carot;
}
String getClarity() {
return this.clarity;
}
char getColor(){
return this.color;
}
String getCut() {
return this.cut;
}
void tooString(){
System.out.println(this+" is stock number "+this.stockNumber+" a "+this.carot+" carot diamond with "+this.clarity+" and a "+this.cut+" cut.");
}
int compareTo(Diamond other) {
if (this.carot<other.carot){
return -1;
}
else if (this.carot>other.carot){
return 1;
}
else{
}
}
}