字符串的内容比较不适合用 “==” 比较。
用“==”比较的只是地址,不是比较内容。
public boolean equals(Object anObject) 只关心内容是否一致
public boolean equalsIgnoreCase(String anthorString) 忽略大小比较字符串,只关心字符内容是否一致。
以下代码是登录,验证对equals和equalsIgnoreCase的应用
package zhtPractice.String的应用.登录和验证码;
import java.util.Scanner;
/**
* Created with IntelliJ IDEA.
*
* @Author: zht
* @Date: 2022年01月05日 14:18
* @Description:
*/
public class demo {
public static void main(String[] args) {
String okName = "zht";
String okPassword = "666";
Scanner sc = new Scanner(System.in);
System.out.println("请输入登录名称:");
String name = sc.next();
System.out.println("请输入登录密码:");
String password = sc.next();
//登录
if(okName.equals(name) && okPassword.equals(password)){
System.out.println("登录成功!");
}else {
System.out.println("登录失败!");
}
//验证码
String okyanzhen = "2Df";
System.out.println("请输入验证码:");
String yanzhen = sc.next();
System.out.println(okyanzhen.equalsIgnoreCase(yanzhen));
}
}
运行结果: