Java 显示正确 错误

标签 java string equals

我遇到了这个不应该是问题的问题

我写了这段代码

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Scanner;

/**
 * @author ZEESHAN
 */
public class TestApps 
{
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) 
    {
        // TODO code application logic here
        Connection con;
        // Statement stmt;
        ResultSet rs;
        String str,str2,str3;
        try 
        {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            con=DriverManager.getConnection("jdbc:odbc:TestApp");

            Statement stmt =  con.createStatement();
            System.out.println("Connected");

            rs=stmt.executeQuery("SELECT Emp_Name,Emp_LastName FROM Table_1 WHERE Emp_Name = 'zeeshan' ");

            while(rs.next()) 
            {
                str = rs.getString("Emp_Name");
                str2 = rs.getString("Emp_LastName");
                String name,pass;    

                Scanner input = new Scanner(System.in);
                name = input.nextLine();
                pass = input.nextLine();

                if(name.equals(str) && pass.equals(str2) )
                {
                    System.out.println("CORRECT");
                }
                else
                {
                    System.out.println("INCORRECT");
                    System.out.println(""+name);
                    System.out.println(""+pass);
                    System.out.println(""+str);
                    System.out.println(""+str2);
                }
            }

            //  String name,pass;    

            /*   
            if(name.equals(str) && pass.equals(str2) )
            {
                System.out.println("Correct");
            }
            else
            {
                System.out.println("Incorrect");
            }
            */
        }
        catch (Exception ex)
        {
            System.out.println("Not connected");
            ex.printStackTrace();
        }
    }
}

一切工作正常,即数据库和所有。我给出了与数据库字符串相同的答案,但我得到的结果不太好,而且结果表明所有字符串都是相同的答案,但为什么我仍然没有达到正确的条件,我得到了错误的条件在控制台中回答。

RESULT:
 INCORRECT
 zeeshan
 ismail
 zeeshan   
 ismail  

最佳答案

str 和 str2 的值中存在尾随空格。在比较字符串之前,您必须修剪值。

str = str.trim();
str2 = str2.trim();

关于Java 显示正确 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13698941/

相关文章:

java - 使用 gridbaglayout 在 javax swing 中定位

string - 使用 > 和 < 比较 Scala 中的两个字符串

java - 使用 EclipseLink 的 JPA 实体的 equals() 和 hashcode()

java - 对 Java 字符串使用 '==' 而不是 .equals

java - JPA:重音字符保存为?在数据库中

java - Eclipse 注释类型之间有什么区别?

javascript - 函数没有调用自身...足够了

c# - 在文本中查找查询匹配项

java - 通过抽象来强制执行 hashCode 和 equals 是否有任何优势?

Java Applet init 非常慢 - java 1.8。 u60