【发布时间】:2016-02-21 14:36:14
【问题描述】:
import java.util.Scanner;
public class LoginPage{
public static void main (String[]args){
System.out.println("______________");
System.out.println("| Login Page |");
System.out.println("______________");
System.out.println();
//Declare Strings
String Log;
String Pass;
String TestU = "Corey";
String TestP = "Chicken";
int i = 0;
//Declare Scanner
Scanner scan = new Scanner (System.in);
while(i<=6){
System.out.print("Username: ");
Log = scan.nextLine();
System.out.print("Password: ");
Pass = scan.nextLine();
i++;
if((Log==TestU)&&(Pass==TestP))
{break;}
}
}
}
这是我正在尝试创建的登录页面的当前代码。 'TestU' 和 'TestP' 就在那里,而不是我将从数据文件中读取的用户名/密码。但是当我输入“Corey”和“Chicken”时,它不会退出while循环。我可能只是做一些非常简单的错误,但我找不到它,我在谷歌或任何东西上都找不到它(也许我正在搜索错误的问题。)但任何帮助将不胜感激。
【问题讨论】:
-
见How to Compare Strings in Java。使用
String.equals而不是==。 -
用
if((Log.equals(TestU))&&(Pass.equals(TestP)))替换if((Log==TestU)&&(Pass==TestP))
标签: java string loops while-loop java.util.scanner