String , StringBuffer 与 StringBuilder 简单的JDK JRE描述

本文探讨了Java中String、StringBuffer与StringBuilder的区别,重点分析了它们在内存使用及性能上的差异。此外还介绍了JDK与JRE的概念及其在Java开发中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

处理字符串的时候经常会用到这三个

首先来说 string 是不可变的 其很多属性都使final 的 所引用对象的值是不可变的,像
String s = “1111”; —》相当于string s = “111”+”11”;
String s1 = s +”1111”;
在系统中是相当于 s->”11111” 对象
然后 s1 ->s+”11111”这个 并不是将s与“11111”拼接在一起 而是在常量池中 找到与s+”11111” 所匹配的字符串 让s1指向它,所以每次当String的值改变时都会 其变量都会指向一个其它的对象 而这样就会产生很多 无引用的对象 使得JVM的GC开始工作加大 影响整体性能

StringBuffer与StringBuilder 不一样他们使两个类 是以流的形式 来操控,每次操作 都是对其类的对象本身来进行操作,所以在其性能 肯定比string的好很多(String s = “sss”+”sss”时除外 因为这只是直接给一个引用变量赋值 并不属于操作操作字符串 )

而StringBuffer与StringBuilder的最大区别就在于 StringBuffer线程安全 而StringBuilder不安全从而在运行效率上来看StringBuilder更佳

JDK(全称java development kit)java开发工具, 是完整的java开发工具,包含JRE与一些其它的java编译工具(e:javaDoc,java调试器),可以提供开发人员直接开发,编译,执行java程序

JRE(全称java runTime Environment)java运行时环境,它包含java虚拟机(jvm),java核心类库和支持文件。同时也包含了执行applet需要的浏览器插件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值