当前位置: 首页 > news >正文

工信部网站备案怎么登录青岛公司做网站的价格

工信部网站备案怎么登录,青岛公司做网站的价格,申请好域名后 怎么做网站,邯郸招聘信息最新招聘1. 运算符 是 Java 中的比较运算符,用于比较两个变量的值是否相等,但具体行为取决于变量的类型: 类型 比较的内容基本类型直接比较值是否相等(如 int a 5; int b 5; a b 返回 true)引用类型比较内存地址&#x…

1. == 运算符

== 是 Java 中的比较运算符,用于比较两个变量的是否相等,但具体行为取决于变量的类型:

类型== 比较的内容
基本类型直接比较是否相等(如 int a = 5; int b = 5; a == b 返回 true
引用类型比较内存地址(即是否指向同一个对象),而不是对象的内容是否相同。

示例代码

String str1 = "hello";
String str2 = "hello";
String str3 = new String("hello");System.out.println(str1 == str2); // true(字符串常量池,同一对象)
System.out.println(str1 == str3); // false(不同对象,地址不同)int num1 = 10;
int num2 = 10;
System.out.println(num1 == num2); // true(基本类型比较值)

2. equals() 方法

equals() 是 Object 类的方法,默认实现和 == 一样(比较内存地址),但许多类(如 StringInteger重写了该方法,改为比较内容是否相同

equals() 行为
Object默认比较内存地址(和 == 一样)
String比较字符串内容(字符序列是否相同)
Integer比较包装的 int 值是否相同
自定义类如果没有重写 equals(),则默认比较地址;建议重写以实现有意义的相等性比较。

示例代码

String s1 = new String("Java");
String s2 = new String("Java");System.out.println(s1 == s2);      // false(不同对象)
System.out.println(s1.equals(s2)); // true(内容相同)Integer a = 1000;
Integer b = 1000;
System.out.println(a == b);       // false(不同对象)
System.out.println(a.equals(b));  // true(值相同)// 自定义类
class Person {String name;Person(String name) { this.name = name; }@Overridepublic boolean equals(Object obj) {if (obj instanceof Person) {return this.name.equals(((Person) obj).name);}return false;}
}Person p1 = new Person("Alice");
Person p2 = new Person("Alice");
System.out.println(p1 == p2);      // false(不同对象)
System.out.println(p1.equals(p2)); // true(name 相同)

3. 关键区别总结

对比项==equals()
比较内容基本类型:值
引用类型:地址
默认比较地址,但可重写(如 String 比较内容)
适用场景判断基本类型或引用是否指向同一对象判断对象逻辑上是否“相等”(如字符串内容相同)
是否可自定义否(语言内置)是(可重写 equals()

4. 注意事项

  1. 字符串比较

    • 使用 equals() 而非 ==(除非明确需要比较地址)。

    • 常量字符串优化:String s1 = "abc" 和 String s2 = "abc" 可能指向同一对象(常量池)。

  2. 自动装箱陷阱

    Integer a = 127;
    Integer b = 127;
    System.out.println(a == b); // true(-128~127 缓存)Integer c = 128;
    Integer d = 128;
    System.out.println(c == d); // false(超出缓存范围)

  3. 重写 equals() 的规范

    • 自反性:x.equals(x) 必须为 true

    • 对称性:x.equals(y) 和 y.equals(x) 结果一致。

    • 一致性:多次调用结果不变。

    • 非空性:x.equals(null) 必须为 false


5. 如何正确使用?

  • 基本类型:用 ==(如 intdouble)。

  • 引用类型

    • 如果需要比较地址(如单例模式):用 ==

    • 如果需要比较内容(如字符串、集合):用 equals()

  • 自定义类:重写 equals()(通常需同时重写 hashCode())。

示例:安全的字符串比较

String input = getUserInput();
if ("quit".equals(input)) {  // 避免 input.equals("quit") 的 NPE 风险System.exit(0);
}

理解 == 和 equals() 的区别是 Java 面试常见考点,也是避免逻辑错误的关键!

http://www.dtcms.com/a/434915.html

相关文章:

  • C语言中的scanf函数(头文件、格式控制、取地址符号分析)
  • 洛谷——P2437 蜜蜂路线
  • 网页制作网站花店水头网站建设
  • 在网站上做承诺书厦门在线制作网站
  • 国家认可的赚钱平台东莞seo网络推广专
  • 安装网站wordpress加个微信登录
  • 在线音频三选一强制选择测试(3-AFC)
  • 高斯消元矩阵
  • 吉林网站优化路得威网站谁做的
  • 神经网络之理解温度对Softmax的影响
  • 做视频怎么去除网站个人网站代做
  • Linux中信号量semaphore的实现
  • 广州网站推广公司建筑工程公司是干嘛的
  • ESP32驱动DHT11温湿度传感器详解
  • flask做的网站 网址做网站推广有什么升职空间
  • 网站上线过程做美团网站多少钱
  • 微信分享网站短链接怎么做公司的介绍怎么写
  • 算法分析:时间和空间复杂度
  • 第6章串数组:稀疏矩阵的十字链表表示
  • 【STM32项目开源】基于STM32的工地环境监测系统
  • 手机登录网站怎么建设如何做一个网站代码
  • 解决django.db.utils.OperationalError: attempt to write a readonly database错误
  • CAN-超时计数器(Timeout Counter)
  • 网站建设策划有哪些建设网站用英文怎么说
  • 报告派研读:2025年光学光电子深度报告
  • 技术演进中的开发沉思-121Linux命令篇:系统设置命令(下)
  • 深入理解 JavaScript 闭包与作用域
  • 【操作系统-Day 38】LRU的完美替身:深入解析时钟(Clock)页面置换算法
  • Linux 入门指南:从零掌握基础文件与目录操作命令
  • 高职院校高水平专业建设网站wordpress的windows