Java String 学习笔记 (一)

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

###String 简介

String 并非java的8大基本数据类型之一。

java中基本数据类型存储在栈内存中。而String不是,新new的String 对象存储在堆内存中。而字符串存储在常量池中。String对象的引用存储中栈内存中。

String的实例化方式

String对象有两种实例化方式

    String str1 = new String("ABC"); //第一种String str2 ="ABC";              //第二种  

第一种new的方式:javap反编译的结果为

       0: ldc           #2                  // String ABC2: astore_1      3: new           #3                  // class java/lang/String6: dup           7: invokespecial #4                  // Method java/lang/String."<init>":()V

整个过程大致可解释为:

  • a. 常量池中创建常量 'ABC';
  • b. 栈内存中创建引用
  • c. 堆内存中新建String对象,再初始化。

而第二种直接赋值的方式虚拟机运行的结果如下:

       0: ldc           #2                  // String ABC2: astore_1 

这里可以很清楚的看出,直接在常量池中创建‘ABC’字符串,指向引用str2

由此可以看出第二种方式明显比第一种更高效。 其实经过测试:

    String s = new String("ABC");//等价于下面两步(唯一的区别就是在栈中多了一个指向'ABC'的引用s1)String s1 ="ABC";String s2 = new String(s1);

转载于:https://my.oschina.net/mercyyang/blog/707565

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

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

相关文章

note2 android4.3,玩家们动手吧 Note2安卓4.3固件已泄漏

【PConline 资讯】最近各个牌子的安卓机迎来了升级安卓4.3的大潮&#xff0c;现在三星Galaxy Note2的安卓4.3固件已经泄漏出来了。实际上&#xff0c;此前三星官方已经确认&#xff0c;Galaxy Note3可以获得官方的安卓4.3固件升级&#xff0c;但具体日期没有确定&#xff0c;只…

【JUnit 报错】 method initializationerror not found:JUnit4单元测试报错问题

今天是用JUnit测试一段代码&#xff0c;报错method initializationerror not found:&#xff1a;出现如下问题&#xff1a; 双击这个就显示出现如下的错误&#xff1a; 查询网上&#xff0c;说是junit版本的问题&#xff1a; 那我就不使用JUnit这个Libernary了&#xff0c;下载…

将byte数组以html形式输出到页面,java 数组显示到html

java 数组显示到html[2021-02-05 01:08:54] 简介:php去除nbsp的方法&#xff1a;首先创建一个PHP代码示例文件&#xff1b;然后通过“preg_replace("/(\s|\&nbsp\;| |\xc2\xa0)/", " ", strip_tags($val));”方法去除所有nbsp即可。推荐&#xff1a;…

windows 下 git 禁用 CRLF 转换 LF

2019独角兽企业重金招聘Python工程师标准>>> windows中的换行符为 CRLF&#xff0c; 而在linux下的换行符为LF&#xff0c;所以在执行add . 时出现提示&#xff0c;解决办法&#xff1a; 删除根目录 .git 文件夹禁用自动转换 > git config --global core.autocrl…

使用gulp构建前端(三)

为什么80%的码农都做不了架构师&#xff1f;>>> 使用gulp构建前端&#xff08;三&#xff09; 紧接着上述文章内容&#xff0c;开始新的插件的使用 插件三 gulp-clean-css&#xff0c;作用减小文件大小&#xff0c;并给引用url添加版本号避免缓存&#xff0c;一个需…

网站html标签如何优化,网站HTML标签优化教程

真正需要SEOer掌握并经常使用的HTML标签也就那么几个&#xff0c;本小节丈哥seo带来的是页面HTML标签优化。title标签 – 标题标签1)title标签用法网站SEOHTML标签优化教程 – 丈哥seo2)标题标签的作用关于网站标题写法与操作技巧有许多&#xff0c;需要怎么优化标题的朋友可以…

html 轮播图的鼠标事件,这是图片轮播的代码 html+css,怎么加上鼠标悬停移出继续功能?...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼.one {position: absolute;width: 500px;height: 400px;overflow: hidden;}.one_cantent img {width: 500px;height: 300px;float: left;}.one_cantent {width: 2500px;height: 400px;position: absolute;left: 0px;animation-name…

微软Azure云之企业Exchange 2016部署12—配置负载平衡

上几节我们把Exchange2016邮箱系统配置完毕了&#xff0c;本节我们来配置开通需要对外的端口&#xff0c;并对这些端口进行负载均衡配置&#xff0c;如下图红框所示&#xff1a;1.Exchange服务端口Exchange2016需要对外开通以下的端口&#xff0c;来对外提供不同的服务&#xf…

centos下升级jdk版本

2019独角兽企业重金招聘Python工程师标准>>> 由于安装的centos系统&#xff0c;自带了jdk1.6和1.7的版本&#xff0c;介于在平时开发&#xff0c;用了1.8.为了保持开发环境的一致&#xff0c;故此需要升级&#xff0c;放办maven打包等工具的使用。 查看系统的jdk版本…

语言之输出png图片_什么是PPML?如何输出PPML文档?

什么是PPML&#xff1f;PPML是由PODi联盟的几个会员公司共同开发出一种个性化印刷标识语言&#xff0c;这是一种全新的、基于XML(可扩展标识语言&#xff09;技术的印刷行业标准语言&#xff0c;得到越来越多的业内人士关注。PPML采用XML作为句法基础&#xff0c;使PPML其他很多…

TCP/IP协议网络模型

1.tcp/ip分层模型 tcp/ip把网络结构分为四层&#xff0c;从上到下依次为&#xff1a;应用层、传输层、互联网层、网络接口层。每层担任不同的职责&#xff0c;下层服务于上层&#xff0c;最终上层就是用户使用的层。分层结构如图1所示。 图1 tcp/ip分层模型 (1)应用层 向用户提…

oracle 增量_【干货分享】DMETL中的增量抽取初识

DMETL实现了增量数据的同步。在源表上进行的增删改操作&#xff0c;可以通过增量数据抽取&#xff0c;同步到目的表中。在第一次将源表数据全量抽取到目的表中后&#xff0c;可以通过重复地执行增量数据抽取&#xff0c;将源表上的增删改操作产生的变化数据&#xff0c;无遗漏地…

计算机英语论文摘要,求英语高手翻译论文摘要,非常感谢!

彭洁回答&#xff1a;Thispaperdescribesacomputerlinecuttingtechnologyandcomputeranimationtechnology.Computertechnologyiscuttingwillbedesignatedasagraphicswindowborder,fromalargescreentoextracttherequiredspecificinformation,toshowapartialpictureorView.Comput…

AIX配置Volumn

我们知道&#xff0c;现在操作系统都具有默认的卷管理系统来管理磁盘。详见存储技术之卷管理和文件系统。总体来说&#xff0c;从下向上分为物理磁盘(PV)、逻辑卷组(VG)、逻辑卷(LV)&#xff0c;用户可以直接mount的是逻辑卷。本文记录一些AIX下的卷管理和配置方法。 AIX下的Vo…

高并发内存占用持续下降_师兄,为什么删除数据后,Redis内存占用依然很高?...

前言上周刚来了个应届小师弟&#xff0c;组长说让我带着&#xff0c;周二问了我这样一个问题&#xff1a;师兄啊&#xff0c;我用top命令看了下服务器的内存占用情况&#xff0c;发现Redis内存占用严重&#xff0c;于是我就删除了大部分不用的keys&#xff0c;为什么内存占用还…

发现保存GIF格式后相素发生变化咋办

数学公式编辑器MathType主要的作用就是编辑公式用的&#xff0c;一些用户朋友编辑完公式希望把公式保存为“高分辨率”的GIF格式&#xff0c;但是在图片查看器中进行浏览查看时发现GIF的分辨率发生了变化&#xff0c;对于这种情况该如何处理呢&#xff1f;下面我们就针对这个问…

湖北计算机技能高考专科学校排名,湖北2021年技能高考专科录取分数线

https://forms.ebdan.net/ls/wg2YPHOQ点击查看全部院校武汉船舶职业技术学院&#xff1a;技能高考(机械类)507技能高考(电气电子类)437技能高考(计算机类)532技能高考(财经类)530技能高考(建筑设计类)319技能高考(旅游类)489技能高考(汽车维修类)466湖北科技职业学院&#xff1…

7月19日实习日志

今天是实习第十二天&#xff0c;时间过得很快一转眼实习一般都已经过去了&#xff0c;今天早上下了大雨&#xff0c;到单位的时候差一点迟到。 今天难道单位公司的同事就带领着我给公司的防火请升级&#xff0c;防火墙可以是一套硬件或软件&#xff0c;它在网络和互联网之间形成…

计算机考研985院校不歧视,考研最不歧视的985大学有哪些

考研最不歧视的大学有很多&#xff0c;其中985院校有哈尔滨工业大学、对外经济贸易大学、中南大学、河南大学和华东师范大学等。哪些985大学不歧视考研考生1、哈尔滨工业大学面试除了自我介绍&#xff0c;其他都不透露自己的信息&#xff0c;面试老师也都不知道&#xff0c;都是…

Python | Tkinter中的文本区域和按钮

Library: 图书馆&#xff1a; TkinterTkinter (Tkinter) Tkinter(Tk interface) is a Standard python library that is used to create easy, fast, and simple GUI applications. Tkinter(Tk接口)是一个标准的python库&#xff0c;用于创建简单&#xff0c;快速和简单的GUI应…