0

我正在使用 Amazon Web Services s3,并且正在使用它来 - 打开一个连接(工作正常) - 从一个文本文件中打开一个输入流,其中列出了用户名和密码 username,password username,password ...一切正常,我在尝试检查用户名是否与密码匹配时遇到问题。

看一看,

            while (INFINITE == 1) {
            System.out.println("ran");
            if (tryToLogin == true) {
                System.out.println("ran2");
                tryToLogin = false;
             BufferedReader br = new BufferedReader(new InputStreamReader(object.getObjectContent()));
             String lineValue = null;
             while((lineValue = br.readLine()) != null && loggedInAs == null){
                 String splitResult[] = lineValue.split(",");
               if ("saucymeatman" ==  splitResult[0] && "mufasa" == splitResult[1]) {
                loggedInAs = splitResult[0];
                System.out.println("logged in");
             //ui.usernameLogin.getText()
               }
               else {
                    System.out.println("SPLIT 0 : " + splitResult[0]);
                    System.out.println("SPLIT 1 : " + splitResult[1]);
               }
             }
             }
        }

即使 "saucymeatman" == splitResult[0] && "mufasa" == splitResult[1] 它也不会打印 "Logged in" 或将 loggedInAs 设置为任何内容。我确信 splitResult[0] 等于“saucymeatman”,因为它打印“SPLIT 0 : saucymeatman”。

提前致谢。

4

1 回答 1

0

不要==用于比较字符串值;使用类的equals方法String。运算符比较==对象引用以确定它们是否引用同一个对象;它不比较字符串内容。

于 2013-07-15T17:44:50.330 回答