java的字符串字面量

  • 在同一个类中,字符串字面量引用同一个字符串对象。例如:
package com.thb;public class Demo4 {public static void main(String[] args) {String world = "world";System.out.println(world == "world");}}

运行输出:

true
  • 在同一个包的不同类中,字符串字面量引用同一个字符串对象。例如:
package com.thb;public class Demo4 {public static void main(String[] args) {String world = "world";System.out.println(world == Another.world);}}package com.thb;public class Another {public static String world = "world";
}

运行输出:

true
  • 在不同包的类中,字面量引用同一个字符串对象。例如:
package com.thb;public class Demo4 {public static void main(String[] args) {String world = "world";System.out.println(world == com.thb.bian.BianOther.world);}}package com.thb.bian;public class BianOther {public static String world = "world";
}

运行输出:

true
  • 用常量表达式拼接的字符串是在编译的时候被计算的,因此作为字符串字面量对待。例如:
package com.thb;public class Demo4 {public static void main(String[] args) {String world = "world";System.out.println(world == ("wor" + "ld"));}}

运行输出:

true
  • 运行时拼接生成的字符串是被新建的,因此是不同的。例如:
package com.thb;public class Demo4 {public static void main(String[] args) {String world = "world";String ld = "ld";System.out.println(world == ("wor" + ld));}}

运行输出:

false
  • 通过显式调用字符串的intern()方法返回的字符串和以前存在的字符串字面量指向同一个字符串对象。
    当调用字符串的intern()方法的时候,会首先到字符串池中查找,如果找到相同的字符串(是否相同是用equals(Object)方法来判断的),则返回池中字符串的引用;如果没有找到相同的字符串,那么就将本字符串增加到字符串池中,然后返回池中字符串的引用。

例如:

package com.thb;public class Demo4 {public static void main(String[] args) {String world = "world";String ld = "ld";System.out.println(world == ("wor" + ld).intern());}}

运行输出:

true

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

01函数的基础

函数是一段功能性代码,可以让python做特殊的事情 函数是代码重用的一种方式,可以让你多次使用函数 abs函数bool函数float函数 绝对值 abs 绝对值 绝对值数值距离原点的位置 0和所有的正数绝对值等于它本身 负数的绝对值等于他的相反数 bool函数 boo…

NewStarCTF2023week4-midsql(利用二分查找实现时间盲注攻击)

大致测试一下,发现空格被过滤了 使用内联注释/**/绕过,可行 1/**/-- 使用%a0替代空格,也可以 1%a0-- 再次测试发现等号也被过滤,我们使用 like 代替 (我最开始以为是and被过滤,并没有,如果是…

使用Python批量修改PPT字体和提取全部文字到word

目录 一、修改PPT中每一页的字体二、将文本框中的字都放到word里 将一份PPT的每一页字体、大小、是否加粗都统一,是一个常见需求。特别是字体统一是高频、热点需求。在python操控PPT常用库python-pptx中有一个bug,对字体的修改只能修改数字和英文字母&am…

智慧公厕:提升城市卫生与舒适体验的未来之选

智慧公厕作为城市管理的一项重要创新,已经在环境监测调控、厕位监测引导、自动化清洁、自动灯光控制、远程控制等方面展现出先进而完善的功能。它不仅提升了市民对公共厕所卫生、舒适、安全等方面的使用体验,同时也为城市管理带来了颇具引领性的改革和升…

大数据Flink(一百零三):SQL 表值聚合函数(Table Aggregate Function)

文章目录 SQL 表值聚合函数(Table Aggregate Function) SQL 表值聚合函数(Table Aggregate Function) Python UDTAF,即 Python TableAggregateFunction。Python UDTAF 用来针对一组数据进行聚合运算,比如同一个 window 下的多条数据、或者同一个 key 下的多条数据等,与…

一文详解汽车电子LIN总线

0.摘要 汽车电子LIN总线不同于CAN总线。 LIN总线基本上是CAN总线的廉价补充,相比于CAN总线,它提供较低的可靠性和性能。同时LIN总线也是一个应用非常广泛的网络协议,并且越来越受欢迎。 再一次,我们准备了一个关于LIN总线的简要…

PHP | php入门知识(if、switch、数组、数组排序、超级全局变量)

文章目录 一、php条件语句(if、switch)1. if语句2. if...else语句3. if...elseif...else语句4. switch语句 二、数组1)数值数组1. 创建数值数组的两种方法:2. 获取数组的长度(count()函数)3. 遍历数值数组&…

JavaScript 中的负无穷大是什么?

在 JavaScript 中,负无穷大表示为 -Infinity。它是一个特殊的数值,用于表示比任何实数都要小的值。 负无穷大用于表示超出数值范围的情况,例如在进行数学计算时发生了溢出或出现了无法表示的结果。它可以通过将负无穷大赋值给变量或通过某些…

接触式静电压测量仪的用途和操作方法

接触式静电压测量仪是一种用于测量静电电荷的仪器,主要用于工业生产和科学研究领域。它可以测量静电电压、静电场强、静电电荷等参数,对于静电控制和环境监测等方面具有重要的作用。 接触式静电压测量仪的操作方法如下: 接通电源:…

系统架构设计师-第17章-通信系统架构设计理论与实践-软考学习笔记

通信系统〈也称为通信网络〉是利用各种通信线路将地理上分散的、具有独立功能的计算机系统和通信设备按不同的形式连接起来,依靠网络软件及通信协议实现资源共享和信息传递的系统。 通信系统概述 通信系统网络架构 通信网络从大的右面主要包括局域网、广域网、移…

libv4l2 交叉编译

错误1:‘SYS_open’未声明(在此函数内第一次使用) 修改 ../libv4lconvert/libv4lsyscall-priv.h 对使用 SYS_open进行判断 #ifdef SYS_openat #define SYS_OPEN(file, oflag, mode) \ syscall(SYS_openat, AT_FDCWD, (const char *)(file), (int)(oflag), (mod…

Pycharm使用阿里云SDK发送短信(超详细+避坑!!)

文章目录 1. 注册阿里云2. 创建签名3. 创建模板4. 创建AccessKey5. API发送测试6. 获取示例7. pycharm发送验证码7.1 安装sdk7.2 参数修改7.3 发送随机四位数字7.4 验证码信息返回7.5 简易版代码: 1. 注册阿里云 访问阿里云官网,进行注册 https://www.…

OpenCV—自动驾驶实时道路车道检测(完整代码)

自动驾驶汽车是人工智能领域最具颠覆性的创新之一。在深度学习算法的推动下,它们不断推动我们的社会向前发展,并在移动领域创造新的机遇。自动驾驶汽车可以去传统汽车可以去的任何地方,并且可以完成经验丰富的人类驾驶员所做的一切。但正确地训练它是非常重要的。自动驾驶汽…

【uniapp】富文本

1、富文本显示&#xff0c;只显示文字&#xff0c;其余html不显示 功能&#xff1a;红框处其实是一个富文本&#xff0c;有图片之类的。但是现在不想根据html显示&#xff0c;只显示文字。 直接上代码 //内容显示 <view>{{item.fhArticleVo.content}}</view> // …

10.30二叉树一些性质,找公共祖先(一般与搜索树),操作的复杂度,选择题细节

课上 一些结论&#xff0c;性质 n0,n1,n2指的是子结点的数量&#xff0c;n0没有子节点&#xff0c;叶子结点 n2*n2n11,若n1为奇数&#xff0c;则n为偶数&#xff0c;不然&#xff0c;则为奇数 满二叉树 没有度为1的结点&#xff0c;即每个结点要么没有孩子结点&#xff0c;要么…

js笔记(函数参数、面向对象、装饰器、高级函数、捕获异常)

JavaScript 笔记 函数参数 默认参数 在 JavaScript 中&#xff0c;我们可以为函数的参数设置默认值。如果调用函数时没有传递参数&#xff0c;那么参数将使用默认值。 function greet(name World) {console.log(Hello, ${name}!); }greet(); // 输出&#xff1a;Hello, Wo…

【CPP】类和对象

1- Classes and Objects Structures A struct in C is a type consisting of a sequence of data membersSome functions/Statements are needed to operate the data members of an object of a struct type 不不小心操作错误&#xff0c;不小心越界 Classes You should b…

C++设计模式_18_State 状态模式

State和Memento被归为“状态变化”模式。 文章目录 1. “状态变化”模式1.1 典型模式 2. 动机 (Motivation)3. 代码演示State 状态模式3.1 常规方式3.2 State 状态模式 4. 模式定义5. 结构( Structure )6. 要点总结7. 其他参考 1. “状态变化”模式 在组件构建过程中&#xf…

Ionic 7 版本发布 - 免费开源、超受欢迎的移动应用开发 UI 工具包,主题优雅且完美支持 Vue.js

Ionic 是一款优秀的移动 UI 框架&#xff0c;迭代也很快&#xff0c;现在也支持了 Vue&#xff0c;是时候向大家推荐用来开发 APP 了。 Ionic 全称是 Ionic Framework&#xff0c;是一个功能强大的开源 UI 工具库&#xff0c;用来帮助前端开发者构建跨平台的移动应用。 Ionic …

Go语言开发网站

引言 随着互联网的迅速发展&#xff0c;网站已经成为人们获取各种信息和服务的主要途径。而开发一个高性能、可扩展的网站是一项挑战。Go语言作为一门现代化的编程语言&#xff0c;具有强大的并发能力和高效的性能&#xff0c;逐渐成为网站开发的首选语言之一。本文将介绍如何…