我将尽我所能清楚地说出我的问题,如果我对我的问题没有意义,我很抱歉,我对java仍然很陌生(几个星期到我的第一个Java类)。if,else if和else声明? java
我的作业的一部分是: “修改发票类中的构造函数,所以根据月份不同,这一天不会大于31,30或28,如果月份是无效的, 0,也迫使一天到0。“
所以在我原来的计划我有这个作为我的月份和日期的方法:
public void setMonth(int month) {
if(month < 1 || month > 12) //if month is less than 1 and greater than 12 force number to 0
this.month = 0;
else
this.month = month;
}
public void setDay(int day) {
if(day < 1 || day > 31) //if day is less than 1 and greater than 31 force to 0
this.day = 0;
else
this.day = day;
}
所以,我想在我的困惑是,是我应该使用“否则,如果”以确保天不大于31,30或28取决于月份? (?还有,我不知道,如果“否则,如果”中的Java支持C++是我最了解)
像:
else if(month = 2 && day > 28)
this.day = 0;
(我知道这个代码不正确,它有一个错误当我打字时)。您认为根据月份确定一天不会超过31,30或28的最佳方式是什么?
如果其他如果在Java中支持,就像C++一样。但是,要小心'if(1)'不起作用 – Sweeper
如果可以使用else,但效率不高。改用java日历并使用它。 –
1.其他if支持java。 2.在你分享的代码中:else if(month = 2 && day> 28),month得到一个值,注意这个编程错误是我们通常面对的,因为在这里,你试图做一个比较,不是任务。 –