使用字符串字面值创建字符串对象
第一种方式是使用字符串字面值创建字符串对象。在双引号内放置字符串文本即可创建一个字符串对象。
String str1 = "Hello, World!";
优点:
- 简单明了:这种方法非常直观和容易理解。
- 自动字符串池:Java中的字符串字面值存储在字符串池中,相同的字符串字面值在内存中只有一个实例。
缺点:
- 限制性:字符串字面值在编译时确定,无法在运行时动态生成。
使用构造函数创建字符串对象
第二种方式是使用字符串的构造函数创建字符串对象。使用构造函数传递字符数组或字节数组来创建字符串。
示例代码:
char[] charArray = {'H', 'e', 'l', 'l', 'o'};
String str2 = new String(charArray);
优点:
- 动态创建:在运行时根据需要动态创建字符串。
- 灵活性:可以使用不同的构造函数重载来处理不同的情况,例如基于字符数组或字节数组创建字符串。
缺点:
- 内存开销:每次使用构造函数创建字符串时,都会在堆内存中分配新的内存空间,可能导致内存开销较大。