Java 中 String 和字符数组的区别。
从技术角度来说,字符数组和字符串都包含字符序列,并用作字符集合。但是两者之间存在显著差异,我们将在下面讨论。
以下是 String 和字符数组之间的一些重要区别。
| 序号 | 关键 | String | 字符数组 |
|---|---|---|---|
| 1 | 实现 | String 用于存储字符序列,并表示为单个数据类型和单个实体。 | 另一方面,字符数组是 char 数据类型的顺序集合,其中每个元素都是一个独立的实体。 |
| 2 | 内部实现 | String 的内部实现使其具有不可变性。 | 另一方面,字符数组是可变的。 |
| 3 | 内置函数 | 由于 String 是一个类,因此提供了各种内置函数,例如 substring()、charAt() 等。 | Java 中没有为字符数组操作提供内置函数。 |
| 4 | 连接 | String 可以使用 + 运算符或其内置函数 concate() 进行连接。 | 字符数组不能使用这些函数/运算符进行连接。 |
| 5 | 存储 | 字符串可以以任何随机顺序存储在内存的一部分中,该部分称为 SCP(字符串常量池)。 | 字符数组中的元素连续存储在内存位置递增的区域中,该区域称为堆。 |
| 6 | 转换 | 可以使用 String 类的 toCharArray() 方法将 String 转换为字符数组。 | 另一方面,可以通过将其传递给 String 构造函数将字符数组转换为 String。 |
String 与字符数组示例
JavaTester.java
public class JavaTester{
public static void main(String[] args) {
String s = "HELLO";
char [] ch = s.toCharArray();
char[] a = {'H', 'E', 'L', 'L', 'O'};
String A = new String(a);
System.out.println(s);
System.out.println(A);
}
}输出
HELLO HELLO
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP