Java字符串比较的几种方法

在 Java 中,字符串比较是常见的操作,包括比较相等、比较大小、比较前缀和后缀串等··;常用方法有 3 个:equals() 方法、equalsIgnoreCase() 方法、 compareTo() 方法,接下来详细介绍这 3 个方法的使用:

equals() 方法:

equals() 方法比较两个字符串的每个字符是否相同。如果两个字符串字符和长度相同,它返回 true,否则返回 false;大小写也会检查!
语法格式如下:

str.equals(stri);

比较:

public class 字符串比较 {
    public static void main(String[] args) {
        String a1 = "aaa";
        String a2 = new String("aaa");
        String a3 = "ABC";
        System.out.println(a1.equals(a2));
        System.out.println(a2.equals(a3));
        System.out.println(a1.equals(a3));
    }
}
运行结果:
true
false
false

代码示例1:

public class 字符串比较 {
    public static void main(String[] args) {
        String str = "图书管理";
        System.out.println("欢迎使用<" + str + ">系统");
        System.out.println("首次登陆请设置账号密码:");
        Scanner input = new Scanner(System.in);
        String password = input.next();//设置密码
        System.out.println("重复登录密码:");
        input = new Scanner(System.in);
        String password1 = input.next(); // 确认密码
        if (password.equals(password1)) {
            System.out.println("密码已生效,请务必记住:" + password);
        } else {
            System.out.println("两次密码不一致,请重新设置!");
        }
    }
}
运行结果:
欢迎使用<图书管理>系统
首次登陆请设置账号密码:
qww
重复登录密码:
qww
密码已生效,请务必记住:qww

进程已结束,退出代码0

equalsIgnoreCase() 方法:

equalsIgnoreCase() 方法的作用和语法与 equals() 方法完全相同,唯一一点不同的是 equalsIgnoreCase() 比较的时候不区分大小写。当比较两个字符串时,它会认为 a-z和A-Z是一样的。

比较

		String st1 = "abc";
        String st2 = "ABC";
        System.out.println(st1.equalsIgnoreCase(st2));    // 输出 true

代码示例2:

public class 字符串比较 {
    public static void main(String[] args) {
        String str = "图书管理";
        System.out.println("欢迎使用<" + str + ">系统");
        System.out.println("请输登录入名称:");
        Scanner input = new Scanner(System.in);
        String name = input.next();//输入账号
        System.out.println("请输入登录密码:");
        input = new Scanner(System.in);
        String pass = input.next(); // 输入密码
        if (name.equalsIgnoreCase("SHANGHAI") && pass.equalsIgnoreCase("PUDONG")) {
            System.out.println("登录成功");
        } else {
            System.out.println("登录失败!");
        }
    }
}
运行结果:
欢迎使用<图书管理>系统
请输登录入名称:
shanghai
请输入登录密码:
pudong
登录成功

进程已结束,退出代码0

compareTo() 方法

compareTo() 方法用于按字典顺序比较两个字符串的大小,该比较是基于字符串各个字符的 Unicode 值
注:如果两个字符串调用 equals() 方法返回 true,那么调用 compareTo() 方法会返回 0。

比较

str.compareTo(String otherstr)

代码示例3:

public class 字符串比较 {
    public static void main(String[] args) {
        String str = "Z";
        String str1 = "z";
        System.out.println("str=" + str);
        System.out.println("str1=" + str1);
        System.out.println("str.compareTo(str1):" + str.compareTo(str1));
        System.out.println("str1.compareTo(str):" + str1.compareTo(str));
        System.out.println("str1.compareTo('z'):" + str.compareTo("Z"));
    }
}
运行结果:
str=Z
str1=z
str.compareTo(str1)-32
str1.compareTo(str)32
str1.compareTo('z')0

进程已结束,退出代码0

你可能感兴趣的:(java,String.equals(),String,java,后端)