【发布时间】:2016-02-17 16:44:04
【问题描述】:
我对下面的if statement block 有疑问:
public void viewaccount ( ) {
Scanner getinput = new Scanner(System.in);
System.out.println("Enter your account number to log in");
int login = getinput.nextInt();
if (login.equals("accnumber")) { // <== here
/* to be written */
}
}
【问题讨论】:
-
嗯,是的。你有一个
int。你期望在它上面调用equals("accnumber")会做什么?你想达到什么目的?如果您告诉我们您的目标,我们更有可能为您提供帮助。 -
您不能使用在原始类型 int 上调用的
.equals()方法。您的错误消息解释了这一点。你很可能想说if ("accnumber".equals(login)),或者更笼统地说:if (String.valueOf(login).equals("accnumber")) -
那么 ArrayList 在哪里?到目前为止,您只向用户询问了一个值...也许您想查看其他一些 ArrayList 包含该值吗?你明白
"accnumber"是一个字符串文字吗?假设您正在学习一门课程,我认为向您的老师寻求更多帮助可能是值得的 - Stack Overflow 非常适合解决特定问题,但我认为您需要重新学习基础知识,然后再继续学习。 -
@salman: "accnumber" 不是一个变量——它是一个字符串文字。了解这一点至关重要。
标签: java