温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java String 如何创建

发布时间:2026-09-15 07:01:17 来源:亿速云 阅读:104 作者:小樊 栏目:编程语言

在 Java 中,String 是不可变对象,创建方式主要有以下几种:


1️⃣ 直接使用字符串字面量(最常用)

String s1 = "hello";
  • JVM 会在**字符串常量池(String Pool)**中查找
  • 若存在则复用,不存在则创建
  • 效率高,推荐使用

2️⃣ 使用 new 关键字

String s2 = new String("hello");
  • 一定会在堆内存中创建一个新对象
  • 同时可能使用常量池中的字符串
  • 不推荐频繁使用(浪费内存)

3️⃣ 通过字符数组创建

char[] chars = {'h', 'e', 'l', 'l', 'o'};
String s3 = new String(chars);

也可以指定范围:

String s4 = new String(chars, 0, 3); // "hel"

4️⃣ 通过字节数组创建

byte[] bytes = {104, 101, 108, 108, 111}; // hello
String s5 = new String(bytes);

可指定字符集:

String s6 = new String(bytes, StandardCharsets.UTF_8);

5️⃣ 拼接创建

String s7 = "hel" + "lo"; // 编译期优化为 "hello"

运行时拼接:

String a = "hel";
String b = "lo";
String s8 = a + b; // 实际使用 StringBuilder

6️⃣ 使用 String.valueOf()

String s9 = String.valueOf(123); // "123"

7️⃣ 使用 intern()(了解即可)

String s10 = new String("hello").intern();
  • 手动将字符串放入常量池

✅ 推荐方式总结

场景 推荐方式
普通字符串 "xxx"
动态内容 + 或 StringBuilder
避免重复对象 使用常量池

如果你愿意,我可以:

  • 讲 String Pool 原理
  • 对比 String vs StringBuilder
  • 举例 常见面试题

你想了解哪一个?

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手