String类对象比较:==和equals的具体细节

请添加图片描述

public class test {
    public static void main(String[] args) {
        String name1 = "zzz";
        String name2 = "zzz";
        String name3 = new String("zzz");

        // hashCode() 方法:基于字符串的内容计算哈希值,因此内容相同的字符串对象其 hashCode() 值也相同
        System.out.println("name1哈希码: " + name1.hashCode());  // 121146
        System.out.println("name2哈希码: " + name2.hashCode());  // 121146
        System.out.println("name3哈希码: " + name3.hashCode());  // 121146

        // 因为 == 运算符用于比较两个引用是否指向同一个对象,而不是比较对象的内容
        System.out.println(name1 == name2);  // true, 因为name1 和 name2 都被赋值为字符串字面量 "zzz"。由于字符串字面量会被存储在字符串常量池中,所以 name1 和 name2 都会引用常量池中的同一个字符串对象 zzz
        System.out.println(name3 == name2);  // false, 因为name3和name2指向不同的对象。name3是通过new创建的一个新String对象(调用了构造方法创建新的类对象)
        // 更具体的:尽管 "zzz" 是一个字面量并且可能已经存在于字符串常量池中,new 关键字强制 JVM 创建一个新的字符串对象,并且这个新对象存储在堆内存中,而不是常量池中。因此,这个新对象与常量池中的对象是不同的。

        // equals 方法来比较字符串内容时,无论字符串是如何创建的,只要内容相同,equals 方法都会返回 true
        System.out.println(name1.equals(name2));  // true
        System.out.println(name3.equals(name2));  // true
    }
}

结果:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/778335.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

macOS查看系统日志的方法

1、command空格键打开搜索框,输入‘控制台’并打开 2、选择日志报告,根据日期打开自己需要的文件就可以

ESP32——物联网小项目汇总

商品级ESP32智能手表 [文章链接] 用ESP32,做了个siri?!开源了! [文章链接]

win11中配制了系统的环境变量mvn/java,但是mvn/java就是提示不存在的解决方法。

1、已经配制了环境变量,但是提示mvn不存在 2、然后我们在开始程序中查看到cmd,然后以管理员运行: 这样的话,是可以mvn这个命令的,而且只有这种方式是可以的,其它的方式,就算设置了以管理员身份运…

Canary,三种优雅姿势绕过

Canary(金丝雀),栈溢出保护 canary保护是防止栈溢出的一种措施,其在调用函数时,在栈帧的上方放入一个随机值 ,绕过canary时首先需要泄漏这个随机值,然后再钩爪ROP链时将其作为垃圾数据写入&…

编程上下文Context及其实现原理

编程上下文Context及其实现原理 author:shengfq date:2024-07-06 title:编程上下文Context及其实现原理 category:编程思想1.编程中的上下文Context是指什么? 在编程和软件工程领域,“上下文”(Context)是一个多义词,其含义可以…

开始尝试从0写一个项目--后端(二)

实现学生管理 新增学生 接口设计 请求路径:/admin/student 请求方法:POST 请求参数:请求头:Headers:"Content-Type": "application/json" 请求体:Body: id 学生id …

VideoAgent——使用大规模语言模型作为代理来理解长视频

概述 论文地址:https://arxiv.org/pdf/2403.10517 本研究引入了一个新颖的基于代理的系统,名为 VideoAgent。该系统以大规模语言模型为核心,负责识别关键信息以回答问题和编辑视频。VideoAgent 在具有挑战性的 EgoSchema 和 NExT-QA 基准上进…

MySQL架构和工作流程

引言:MySQL执行一条sql语句期间发生了什么? 想要搞清楚这个问题,我们必须了解MySQL的体系结构和工作流程 一、MySQL体系结构 MySQL由以下几个部分组成 一、server层 1.MySQL Connnectors连接器,MySQL的连接池组件,…

【vue组件库搭建05】vitePress中使用vue/antd/demo预览组件

一、vitepress使用vue及antd组件 1.安装antd之后在docs\.vitepress\theme\index.ts引入文件 // https://vitepress.dev/guide/custom-theme import { h } from vue import type { Theme } from vitepress import DefaultTheme from vitepress/theme import ./style.css impor…

React 19 竞态问题解决

竞态问题/竞态条件 指的是,当我们在交互过程中,由于各种原因导致同一个接口短时间之内连续发送请求,后发送的请求有可能先得到请求结果,从而导致数据渲染出现预期之外的错误。 因为防止重复执行可以有效的解决竞态问题&#xff0…

试用笔记之-汇通Exe可执行文件之pe分析

首先下载汇通Exe可执行文件之pe分析 http://www.htsoft.com.cn/download/pedump.rar

苹果笔记本能玩网页游戏吗 苹果电脑玩steam游戏怎么样 苹果手机可以玩游戏吗 mac电脑安装windows

苹果笔记本有着优雅的机身、强大的性能,每次更新迭代都备受用户青睐。但是,当需要使用苹果笔记本进行游戏时,很多人会有疑问:苹果笔记本能玩网页游戏吗?苹果笔记本适合打游戏吗?本文将讨论这两个话题&#…

数据集 | 人脸公开数据集的介绍及下载地址

本文介绍了人脸相关算法的数据集。 1.人脸数据集详情 1.1.Labeled Faces in the Wild (LFW) 论文 下载地址:LFW Face Database : Main (umass.edu) 是目前人脸识别的常用测试集,其中提供的人脸图片均来源于生活中的自然场景,因此识别难度会…

Google Play上架:恶意软件、移动垃圾软件和行为透明度详细解析和解决办法 (一)

近期整理了许多开发者的拒审邮件和内容,也发现了许多问题,今天来说一下关于恶意软件这类拒审的问题。 目标邮件如下: 首先说一下各位小伙伴留言私信的一个方法,提供你的拒审邮件和时间,尽可能的详细,这样会帮助我们的团队了解你们的问题,去帮助小伙伴么解决问题。由于前…

【CUDA】 扫描 Scan

Scan Scan操作是许多应用程序中常见的操作。扫描操作采用一个二元运算符⊕和一个输入数组并计算输出数组如下: [x0,(x0⊕x1),…,( x0⊕x1⊕…..⊕xn-1)] 分层扫描和多种Scan算法介绍 Kogge-Stones Algorithm Kogge-Stones Algorithm最初是为设计快速加法电路而发…

【pytorch19】交叉熵

分类问题的loss MSECross Entropy LossHinge Loss (SVN用的比较多) ∑ i m a x ( 0 , 1 − y i ∗ h θ ( x i ) ) \sum_imax(0,1-y_i*h_\theta(x_i)) ∑i​max(0,1−yi​∗hθ​(xi​)) Entropy(熵) Uncertainty(…

解决obsidian加粗中文字体显示不突出的问题

加粗字体显示不突出的原因:默认字体的加粗版本本来就不突出 解决方法:改成显示突出的类型Microsoft YaHei UI 【效果】 修改前:修改后: 其他方法: 修改css(很麻烦,改半天也不一定奏效&#…

容器:stack

以下是关于stack容器的一些总结: stack容器比较简单,主要包括: 1、构造函数:stack [staName] 2、添加、删除元素: push() 、pop() 3、获取栈顶元素:top() 4、获取栈的大小:size() 5、判断栈是否为空&#x…

Codeforces Round 903 (Div. 3)A~F

A.Dont Try to Count 输入样例: 12 1 5 a aaaaa 5 5 eforc force 2 5 ab ababa 3 5 aba ababa 4 3 babb bbb 5 1 aaaaa a 4 2 aabb ba 2 8 bk kbkbkbkb 12 2 fjdgmujlcont tf 2 2 aa aa 3 5 abb babba 1 19 m mmmmmmmmmmmmmmmmmmm输出样例: 3 1 2 -1 1 0…

django之url路径

方式一&#xff1a;path 语法&#xff1a;<<转换器类型:自定义>> 作用&#xff1a;若转换器类型匹配到对应类型的数据&#xff0c;则将数据按照关键字传参的方式传递给视图函数 类型&#xff1a; str: 匹配除了”/“之外的非空字符串。 /test/zvxint: 匹配0或任何…