zoukankan      html  css  js  c++  java
  • java ==与equal()

    一般,==比较的是两个对象的引用(即内存地址)是否相等;而equals()比较的是两个对象里的内容(即内存地址里存放的东西)是否相等。

    放上栗子:

     1 /**
     2  * 要求: 通过键盘输入用户的用户名和密码 
     3  * 若用户正确输入登录成功 
     4  * 否则失败
     5  */
     6 public class Demo8 {
     7     public static void main(String[] args) {
     8         Scanner sc = new Scanner(System.in);
     9         System.out.println("请输入用户名:");
    10         String username = sc.nextLine();
    11         System.out.println("请输入密码:");
    12         String userward = sc.nextLine();
    13         show(username, userward);
    14     }
    15 
    16     public static void show(String x, String y) {
    17         if (x.equals("张三") && y.equals("123456m")) {
    18         // if (x == "张三" && y == "123456m" ) {   // String 不是基本数据类型,不能用 == ,String 判断相等用equals
    20 System.out.println("正确!"); 21 } else { 22 System.out.println("错误!"); 23 } 24 } 25 }

    输出:

    请输入用户名:
    张三
    请输入密码:
    123456m
    正确!

    18行:因为用“ == ”比较两个对象时,比较的是两个对象的内存地址,所以就算输入的用户名是“ 张三 ”,密码是“123456m”,最后输出的结果依然是“ 错误! ”

  • 相关阅读:
    哇~~
    震作震作~~life is only Soso
    真j8无聊
    川行之旅
    可爱的java,我又来看你了,
    暑假周进度总结报告2
    暑假周进度总结报告1
    暑假周进度总结报告3
    2017级软工经验交流体验
    暑假周进度总结报告4
  • 原文地址:https://www.cnblogs.com/chenyuan7/p/9529216.html
Copyright © 2011-2022 走看看