更新时间:2022-11-16 10:30:11 来源:极悦 浏览961次
在给定的示例中,只会创建一个对象。首先JVM不会在字符串常量池中找到任何值为“Welcome”的字符串对象,因此它会创建一个新对象。之后它会在池中找到值为“Welcome”的字符串,它不会创建新对象但会返回对同一实例的引用。
使 Java 的内存效率更高(因为如果字符串常量池中已经存在,则不会创建新对象)。
使用新关键字
String s = new String(“欢迎”);
在这种情况下,JVM 将在普通(非池)堆内存中创建一个新的字符串对象,并将文字“Welcome”放入字符串常量池中。变量 s 将引用堆(非池)中的对象。
句法:
<String_Type> <string_variable> = "<sequence_of_string>";
每当将字符串对象创建为文字时,该对象将在字符串常量池中创建。这允许 JVM 优化 String 文字的初始化。
CharBuffer:此类实现了 CharSequence 接口。此类用于允许使用字符缓冲区代替 CharSequences。这种用法的一个例子是正则表达式包 java.util.regex。
字符串:它是一个字符序列。在java中,String的对象是不可变的,这意味着一个常量,一旦创建就不能改变。
在 Java 中有两种创建字符串的方法:
字符串字面量
使用新关键字
通过上述介绍,相信大家对Java中的字符串已经有所了解,大家如果想了解更多相关知识,不妨来关注一下极悦的Java极悦在线学习,里面的课程内容从入门到精通,细致全面,很适合没有基础的小伙伴学习,希望对大家能够有所帮助。
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习