zoukankan      html  css  js  c++  java
  • String比较.equals

    首先定义四个变量str

    public class SIzhui {
        public static void main(String[] args) {
            String str1="wang";
            String str2="li";
            String str3="wang";
            String str4=new String("wang");
    
        } 
    }

    然后进行比较

    public class SIzhui {
        public static void main(String[] args) {
            String str1="wang";
            String str2="li";
            String str3="wang";
            String str4=new String("wang");
            
            System.out.println(str1==str2);
            System.out.println(str1==str3);
            System.out.println(str1==str4); 
    
      }   
    }
    

      

    每定义一个String类型,就会在内存中开辟一块空间

    此处比较的是4个变量的地址

    所以输出

    因为变量str1和变量str3赋给的值都为“wang”;

    所以这两个的值被自动存入同一个常量池,

    所以此时比较str1和str3,输出的是true;

    str4赋给的值同样是“wang”,

    但是str4=new string,也就是说,此处“wang”被放到一个新开辟的堆内存中,而不会存入常量池,所以此处输出false。

    如果想比较两个String型变量的值,就用到一个String.equals。这个方法就是用来比较字符串。

    public class SIzhui {
        public static void main(String[] args) {
            String str1="wang";
            String str2="li";
            String str3="wang";
            String str4=new String("wang");
        
            System.out.println(str1.equals(str4));
      }
    }
    

      

    运行结果:

  • 相关阅读:
    nsight system
    unity 拿到管线权限的解决方案
    Erlang cowboy 入门参考
    [Erlang]Mnesia分布式应用
    erlang浅谈
    erlang 中带下划线变量的使用
    erlang 符号相关基本语法
    Erlang与ActionScript3采用JSON格式进行Socket通讯
    Erlang游戏开发-协议
    Erlang之IO编程
  • 原文地址:https://www.cnblogs.com/zyn0216/p/7719825.html
Copyright © 2011-2022 走看看