Java中String类、StringBuffer和StringBuilder怎么使用


这篇文章主要介绍“Java中String类、StringBuffer和StringBuilder怎么使用”,在日常操作中,相信很多人在Java中String类、StringBuffer和StringBuilder怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java中String类、StringBuffer和StringBuilder怎么使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!String类属于引用数据类型,不属于基本数据类型。在Java中只要是” “(双引号)中的,都是String对象。java中规定,双引号中的字符串是不可变的,也就是说”abc”自出生到死亡都不可能变成”abcd”,也不能变成”ab”。在JDK中双引号括起来的字符串都是存储在方法区的字符串常量池当中的。(因为在实际开发中,字符串的使用频率十分高,为了执行效率,就把字符串放在了方法区中的字符串常量池当中)通过 String s = “abc” 这种方式,会在方法区中的字符串常量池创建对象,s会保存该字符串在字符串常量池中的地址。通过 String s = new String(“abc”)的方式创建对象,首先会在字符串常量池中创建”abc”对象(如果字符串常量池中已经有了”abc”则不会再次创建),然后会在堆区创建String类对象,它会储存” abc “在方法区中的地址,s又会保存堆中String对象的地址。看以下代码:按照以上代码画出JVM内存简图如下:知道了String类字符串的存储原理之后,就可以很容易知道以下代码的编译结果:思考:频繁使用字符串拼接会有什么影响?java中字符串是不可变的,每拼接一次都会免费云主机域名产生一个新的字符串字符串是存在字符串常量池中的,频繁使用字符串拼接会占用大量的方法区空间为了避免以上问题我们就可以使用到StringBuffer类它的用法与StringBuffer十分相似,但是也有很大的区别:StringBuffer中的方法都有synchronized关键字修饰,表示StringBuffer在多线程编译环境下是安全的StringBuilder中方法没有synchronized关键字修饰,表示StringBuilder在多线程编译环境下是不安全的到此,关于“Java中String类、StringBuffer和StringBuilder怎么使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注百云主机网站,小编会继续努力为大家带来更多实用的文章!

相关推荐: Java中@JSONField对象字段重命名和顺序问题怎么解决

本篇内容介绍了“Java中@JSONField对象字段重命名和顺序问题怎么解决”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.创建一个测试实体2.将实体转换为…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 04/25 12:12
下一篇 04/25 12:38

相关推荐