【发布时间】:2014-08-31 09:23:21
【问题描述】:
您好,我创建了这个方法。它的工作是接收一个整数 A,它可以是 10 或 30。如果值为 10,则返回 TRUE,否则返回 false。
public static boolean checkStatus(int a){
if(a.equals(10)){
return true;
}
return false;
}
由于某种原因,我在 if(a.equals(10)) 条件下遇到编译错误,即 INT CANNOT BE DEREFERNCED。如果我没记错的话, .equals() 方法不是在这种情况下要走的路吗?
感谢您的帮助!
【问题讨论】:
-
编译错误告诉你什么?
-
if(a.equals(10)) 是一个字符串比较。不适用于整数。请在您的 if 条件中遵循 a==10
-
@NarendraPal 不,这不是字符串比较,只是非法方法调用。即使
s是String,s.equals(10)也不是字符串比较,;它总是返回false而不进行任何比较。equals是一种可以应用于任何对象的方法,而不仅仅是字符串。 -
@ajb 是的!!!我错了!谢谢
标签: java methods boolean return equals