String
is immutable. Char
array is not. A string is implemented with a char array underneath but every time you try to modify it (like with concatenation, replace etc.) it gives you a new String
object.
So, String
behaves as a constant Char
array but comes with certain syntactic sugar that also makes them very easier to use. For example, the addition +
operator has been overloaded as a string concatenation operator as well.