Was ist der Unterschied zwischen einem ‘char’ und einem String?

Ein char repräsentiert ein einzelnes Zeichen im Unicode. Der Typ char ist ein primitiver Datentyp. Er ist zuweisungskompatibel zu den ganzzahligen Datentypen. Mit char kann also auch gerechnet werden, z.B. bei Verschlüsselungen.

Beispiel: Zum Unicode jedes Zeichens wird 1 addiert (Aus ‘a’ wird ‘b’, aus ‘b’ wird ‘c’, …).

char ca[] = "Hello world!".toCharArray();
for(char c : ca) {
    System.out.print((char)(c + 1));
}
// Ausgabe: Ifmmp!xpsme"

Die Objekte der Klasse String dienen zum Speichern einer Folge von Zeichen und bieten Methoden zum Arbeiten mit Strings an. Der Typ String speichert eine Folge von chars in einem char-Array. Dieses Array wird von verschiedenen Methoden wie charAt(), length(), equals(), toLowerCase(), … verwendet. Strings in Java sind unveränderlich, das heißt bei Stringmanipulationen wie der String-Konkatenation oder substring(), trim(), toUpperCase(), … werden neue String-Objekte erzeugt.