欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

java字符串比较总结,java字符串,java中有几种方法可以

来源: javaer 分享于  点击 15698 次 点评:15

java字符串比较总结,java字符串,java中有几种方法可以


java中有几种方法可以做字符串比较,这对于入门者来说是很容易混淆的。

package cn.outofmemory.examples;public class Main {    public static void main(String[] args) {        String s1 = new String("abc");        String s2 = new String("abc");        if (s1 == s2) {            System.out.println("s1 == s2");        }        if (s1.equals(s2)) {            System.out.println("s1.equals(s2)");        }        if (s1.compareTo(s2) == 0) {            System.out.println("s1.compareTo(s2) == 0");        }    }}

以上代码输出:

s1.equals(s2)s1.compareTo(s2) == 0

第一个条件s1 == s2是不成立的,在java中字符串双等号表示引用相当,只有两个变量引用的是同一地址时,双等于号才会返回true。

而equals和compareTo比较的是字符串变量的值。

  String s1 = "abc";  String s2 = "abc";  if (s1 == s2) {      System.out.println("s1 == s2");  }

猜猜看上面的代码会输出什么呢? 这样s1和s2是相等的,这是因为java虚拟机会对字符串做内置,这样就会导致s1和s2引用的是同一内存地址的字符串值。

相关栏目:

用户点评