我的枚举是一周中的几天。我想编写方法prevDay(),它将修改每个
Day day
键入以使其相等
Day.MON
当我调用以下代码时出现错误:
错误 - 作业的左侧必须是变量。
public enum Day {
MON, TUE, WED, THU, FRI, SAT, SUN;
public static main(String[] args){
Day d= Day.TUE;
d.prevDay();
}
public void prevDay(){
this=Day.MON;
}
}
但如果我打电话:
public enum Day{
MON, TUE, WED, THU, FRI, SAT, SUN;
public static main(String[] args){
Day d= Day.TUE;
d=d.prevDay();// if I change this line to: "d.prevDay() "
} // will day also be modified?
public Day prevDay(){
return Day.MON;
}
}
没有错误。为什么?
答案 0 :(得分:0)
我为你做了一点研究,发现了以下内容:
参见代码清单9.26
你能尝试使用这个吗?而不是简单吗?