可能重复:
How do I compare strings in Java?为什么字符串==“值”返回false即使它的“价值”?
用户发送命令 “/测试” 中获得2个输出: - 如果密码错误 - 如果密码是正确的
正确密码为“secret”
为什么当用户做“/测试秘密”它仍然返回它的错误密码?
@Override
public void processCommand(ICommandSender sender, String[] args)
{
if (args.length == 1)
{
if (args[0] != "secret") {
sender.sendChatToPlayer("Wrong password " + sender.getCommandSenderName());
} else {
sender.sendChatToPlayer("Welcome " + sender.getCommandSenderName());
}
} else if (args.length == 0) {
sender.sendChatToPlayer("No parameters send");
} else {
sender.sendChatToPlayer("You have to give me just 1 argument");
}
}
是否有需要修整的空间? –
正如本网站上许多其他许多问题所指出的那样,这是因为您需要使用'.equals()'方法比较Java中的字符串相等性。 –
阅读关于equals()与== –