关于java中判断字符串相等==和equal 详解

①如果我们定义两个字符串:

        String c="123";
        String d="123";

        System.out.println(c==d);

此时返回值为true;因为此时我们定义的c和d两个字符串,都是在内存中存储,其实指向了同一个存储空间。在debug模式中我们可以清晰的看到,其实两个字符串的id是一致的;

②如果我们实例化两个字符串对象,那么此时我们要比较的是一个类实例化出来的两个对象,此时使用==判断是不相等的

我们可以看到,这两个对象的id是不一样的。

最后:说一下 进行相等判断的两个方法:== 和 equal

==是两边的完完全全是一致的,才返回true,否则返回false

equal是判断两个对象中的内容是否一致,所以第二个例子 我们使用equal进行判断,返回值为true 使用 ==判断则返回false

 

相关文章

HashMap是Java中最常用的集合类框架,也是Java语言中非常典型...
在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,...
介绍 注解是JDK1.5版本开始引入的一个特性,用于对代码进行说...
介绍 LinkedList同时实现了List接口和Deque接口,也就是说它...
介绍 TreeSet和TreeMap在Java里有着相同的实现,前者仅仅是对...
HashMap为什么线程不安全 put的不安全 由于多线程对HashMap进...