Kleinbuchstaben oder Großbuchstaben verwandeln
Aus Byte-Welt Wiki
Version vom 1. Dezember 2021, 19:45 Uhr von L-ectron-X (Diskussion | Beiträge)
Java bietet bereits allgemein gültige, fertige Methoden an, um Groß- in Kleinbuchstaben oder Klein- in Großbuchstaben zu verwandeln.
Aber wie könnte man das auf Einsteiger-/Student-Niveau selbst implementieren? Das versucht folgender Code erklären:
public class ChangeCase {
/**
* Verwandelt Klein- in Großbuchstaben. Zahlen und Sonderzeichen bleiben unbehandelt.
* @param c das zu untersuchende Zeichen
* @return das umgewandelte Zeichen, wenn es ein Kleinbuchstabe war
*/
public static char toUpperCase(char c) {
if(c >= 'a' && c <= 'z') {
return c-=32;
}
return c;
}
/**
* Verwandelt Groß- in Kleinbuchstaben. Zahlen und Sonderzeichen bleiben unbehandelt.
* @param c das zu untersuchende Zeichen
* @return das umgewandelte Zeichen, wenn es ein Großbuchstabe war
*/
public static char toLowerCase(char c) {
if(c >= 'A' && c <= 'Z') {
return c+=32;
}
return c;
}
/**
* Verwandelt die im char-Array enthaltenen Klein- in Großbuchstaben.
* Zahlen und Sonderzeichen bleiben unbehandelt.
* @param c das zu untersuchende char-Array
* @return das umgewandelte char-Array
*/
public static char[] toUpperCase(char[] c) {
for(int i = 0; i < c.length; i++) {
c[i] = toUpperCase(c[i]);
}
return c;
}
/**
* Verwandelt die im char-Array enthaltenen Groß- in Kleinbuchstaben.
* Zahlen und Sonderzeichen bleiben unbehandelt.
* @param c das zu untersuchende char-Array
* @return das umgewandelte char-Array
*/
public static char[] toLowerCase(char[] c) {
for(int i = 0; i < c.length; i++) {
c[i] = toLowerCase(c[i]);
}
return c;
}
public static void main(String[] args) {
char a = 'a';
char b = 'B';
char[] c = {'s', 'u', 'p', 'e', 'r', '!'};
char[] d = {'S', 'U', 'P', 'E', 'R', '!'};
System.out.println(ChangeCase.toUpperCase(a));
System.out.println(ChangeCase.toUpperCase(b));
System.out.println(ChangeCase.toUpperCase(c));
System.out.println(ChangeCase.toLowerCase(d));
}
}