Java 密码生成器-如果/否则验证字符串
我正在验证一个字符串。当输入框出现时,我输入密码“wolverhampton”,但我总是得到“您的密码不正确”,而不是“您的密码已被接受” 我做错了什么? 我是一个noob顺便说一句。只编码了几天 提前谢谢 以下是我目前掌握的代码:Java 密码生成器-如果/否则验证字符串,java,if-statement,passwords,Java,If Statement,Passwords,我正在验证一个字符串。当输入框出现时,我输入密码“wolverhampton”,但我总是得到“您的密码不正确”,而不是“您的密码已被接受” 我做错了什么? 我是一个noob顺便说一句。只编码了几天 提前谢谢 以下是我目前掌握的代码: import javax.swing.JOptionPane; public class loops { public static void main (String[] args) { String password; String nu
import javax.swing.JOptionPane;
public class loops {
public static void main (String[] args) {
String password;
String number;
password=JOptionPane.showInputDialog(null,"Enter password");
number= password;
if(number == "wolverhampton")
{System.out.println("Your password is accepted");}
else {System.out.println("Your password is incorrect");
}
您犯了一个典型的错误,使用
==
而不是.equals()
或.equalsIgnoreCase()
。你说你只写了几天代码?希望你指的是一本好书&已经读完了理论部分
您需要了解的是:
- 面向对象的基本概念及其区别 Java中的引用与对象之间
- 对象在内存中的存储方式与字符串对象在内存中的存储方式
- 使用
对基本体和对象的影响==
- 因此,我们应该使用
来代替.equals()
- 因此,我们应该使用
- 字符串对象的
和==
规则如何更改.equals()
这些主题可以很容易地通过谷歌搜索或在StackOverFlow中搜索。Oracle的Java教程也是一个很好的源代码。一旦您了解了所有内容,那么您也会知道为什么用字符串存储密码不是一个好的做法 请添加一个标签,说明您使用的语言