与 C/C++ 不同,字符数组和字符串在 Java 中是两种不同的东西。字符数组和字符串都是字符的集合,但属性不同。
Java字符串和字符数组的区别如下:

字符串 字符数组
字符串是指表示为单一数据类型的字符序列 字符数组是数据类型 char 的顺序集合
字符串是不可变的 字符数组是可变的
可以在字符串上使用 substring()charAt()等内置函数 Java 中没有为字符数组的操作提供内置函数
'+'可用于将字符串附加在一起以形成新字符串 + 不能用于附加两个字符数组
charAt()方法可用于访问字符串中特定索引处的字符 字符数组中的字符可以像使用任何其他语言一样通过使用 [] 正常访问
字符串可以以任何方式存储在内存中 字符数组中的元素连续存储在不断增加的内存位置
所有字符串都存储在字符串常量池中 所有字符数组都存储在堆中
不适合在 Java 中存储密码 首选用于在 Java 中存储密码
使用 String 类的 toCharArray() 方法可以将字符串转换为字符数组 通过将字符数组传递给字符串构造函数,可以将字符数组转换为字符串