【发布时间】:2014-03-09 17:23:29
【问题描述】:
1960 年 6 月 10 日这一日期很特别,因为当我们将其写成以下格式时,月乘以日等于年。 6/10/60
设计一个名为 Magic Date(DONE) 的类。类构造函数应该接受一个月、一天、一年的整数值。 (完毕)。该类还应该有一个名为 isMagic 的方法,如果传递给构造函数的日期是魔法,则返回 true,否则返回 false(我有方法 Done): 编写一个程序,要求用户输入月、日、两位数的年整数(Done) 该程序应创建一个MagicDate 类的实例,以确定用户输入的日期是否为幻日。如果是,程序应该显示一条消息说日期很神奇。否则它应该显示一条消息说日期不是魔术。(需要帮助) 需要帮助的是让它返回一个值。就我现在所拥有的,即使日 * 月不 == 年,它也总是会返回魔法 这是我的代码。
public class MagicDate
{
int month;
int day;
int year;
int value;
public MagicDate(int month, int day, int year)
{
}
public void isMagic()
{
if (month * day == year)
System.out.println("Magic");
else
System.out.println("Not Magic");
}
}
和司机
public void challenge16()
{
int month;
int day;
int year;
System.out.println("Please enter a month");
month = keyboard.nextInt();
System.out.println("Please enter a day");
day = keyboard.nextInt();
System.out.println("Please enter a year");
year = keyboard.nextInt();
MagicDate magicdate1 = new MagicDate(month, day, year);
magicdate1.isMagic();
}
}
我是新人,这是我的第一个学期,所以这可能是一个愚蠢的错误,所以我很抱歉。我也试过这样的方法,没有得到任何返回值。
public boolean isMagic()
if (day * month ==year)
return True;
else
return False
【问题讨论】:
-
您还需要在方法主体周围使用大括号。
-
@fge 它们确实存在,它们被称为
true和false。 (小写) -
@fge 简单地说它们不存在是非常具有误导性的,更好的评论是解释它们必须是小写的。
-
我仍然感谢所有的 cmets。无论如何,我走错了路,因为我只是忘记将提供给构造函数的参数存储在实例字段中。所以实例字段总是有它们的默认值 (0)。
标签: java