2015-10-15 46 views
1

根据指令:编写一个静态方法,该方法将一个整数作为形式参数,如果参数值为偶数,则返回布尔值True;如果参数值为偶数,则返回False。这似乎我的方法必须调用一个int而不是一个布尔值。这样说,我不知道如何从调用int的方法返回一个布尔值。我试过这个,但它不起作用。从调用Int的方法返回布尔值

编辑 - 语言是JAVA。 \ nEDIT 2 - 对于将来看这个的人,我原本打算输入private static int result。不是私有的静态布尔结果。那个错误最终导致我的代码被修复。

} 
    private static boolean result(int userIn) 
    { 
     if (userIn % 2 == 0) 
     { 
      int yes = 1; 
      return true; 
     } 
     else 
     { 
      return false; 
     } 

    } 
+2

我不知道你的意思是“调用一个int”。 “呼叫”是你用方法做的事情,而不是数字。此外,你的代码看起来正确。你的意思是“不起作用”? – melpomene

回答

3

你原来的问题并没有真正指定编程语言,但目前还不清楚为什么你认为你需要“调用一个int”。

然而,在大多数C裔语言,并与您的代码报价的风格保持一致,下面应该工作

private static boolean result(int userIn) 
{ 
    return (userIn % 2) == 0; 
} 

表达(userIn % 2) == 0将评估为布尔值(或一个你的语言的表示)。

它是一种常见的抗成语的人学习计划,这样做:

if (some condition is true) 
then 
    return TRUE 
else 
    return FALSE 

多数(现代)编程语言让你简单地返回评估布尔条件的结果,或分配它到一个适当类型的变量。

因此

boolean result = (myvariable >= 10) 

具有相同的结果,但比更可读:

boolean result 
if (myvariable >= 10) 
    result = TRUE 
else 
    result = FALSE 

这可能是什么谁设置的转让者是想你从中吸取教训。

+0

这看起来更像是评论而不是答案。您的代码返回与OP相同的结果。 – melpomene

+0

OP似乎正在努力提供一个'int'并返回一个布尔值的概念。我只是向他们展示了它是如何完成的,以及为什么他们的代码片段过于复杂。 – kdopen

+2

@frillybob你也是。 – melpomene