java .getText()在IF语句中不起作用

时间:2016-12-06 12:34:51

标签: java if-statement

我试图让某人在我正在制作的程序中更改他/她的密码。我试图做一个IF声明,我检查他是否把他的旧密码设置为正确,然后我检查他是否将他的新密码放了两次,如果它们是相同的。

我的问题是,当运行IF语句时,无论我输入什么,它都将变为False。即使它是正确的答案。我尝试了一些方法来解决它,但它没有用。

WachtwoordVeranderenController.java

package testswitch;

import java.net.URL;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.util.ResourceBundle;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;

/**
 *
 * @author Peltos
 */
public class WachtwoordVeranderenController implements Initializable {

@FXML TextField FXOudWachtwoord, FXNieuwWachtwoord, FXBevestigWachtwoord;
@FXML Button gevondenButton;

String id = MainController.getUsername();
String password = MainController.getPassword();

Database database = Main.getDatabase();



@FXML
private void writeToDB() throws SQLException {

    String query = "UPDATE testDatabase.Gevonden SET "
            + "Password=?, "
            + "WHERE Username=?;";

    PreparedStatement statement = database.prepareStatement(query);

    if ((FXNieuwWachtwoord.getText() == password) && (FXNieuwWachtwoord.getText() == FXBevestigWachtwoord.getText())) {
        try {
            System.out.println("gelukt!");
            statement.setString(1, FXNieuwWachtwoord.getText());
            statement.setString(2, id);
            //statement.executeUpdate();
            MainNavigator.loadVista(MainNavigator.START);
        } catch(SQLException ex) {
            ex.printStackTrace();
        }
    }
    else{
        System.out.println("Error");
        System.out.println("Password = " +password);
        System.out.println("FXOudWachtwoord = " +FXOudWachtwoord.getText());
        System.out.println("FXNieuwWachtwoord = " +FXNieuwWachtwoord.getText());
        System.out.println("FXBevestigWachtwoord = " +FXBevestigWachtwoord.getText());
    }
}

@FXML
private void cancel() {
    MainNavigator.loadVista(MainNavigator.START);
}

@Override
public void initialize(URL url, ResourceBundle rb) {
}

}

我的输出中没有任何错误。无论我做什么,它总是需要ELSE语句。我觉得.getText()与它有关。

0 个答案:

没有答案