Ok, ich habe jetzt mehrere Problembereiche verstanden:
a) Eine Problematik in Deinem Code, die mir aufgefallen ist
Du hast ein Array von Strings und greifst auf die ersten drei Zeichen zu. Das setzt aber natürlich voraus, dass es diese drei Zeichen gibt. Dies ist natürlich absolut kein Problem, wenn Du Dir den Umgang mit Strings / Chars erst etwas erarbeiten möchtest, aber es sollte Dir bewusst sein, dass dies in einer Applikation zu Problemen führen kann und daher durchaus geprüft werden sollte. Also z.B. prüfen: Ist die Länger des Strings 3 Zeichen? Wenn nicht, dann Fehlermeldung sonst die Prüfung, die Du jetzt gemacht hast.
b) Feststellen, ob ein Zeichen ein spezielles Zeichen ist. char ist streng genommen auch nur eine Zahl, und zwar aus 16 Bit bzw. 2 Bytes um exakt zu sein. Sogenannte char Literale kannst Du im Code angeben mit 'x', wobei x genau ein Zeichen sein muss. (Wobei das genau ein Zeichen bedeutet, dass es etwas sein muss, dass der Compiler als 1 Zeichen auswertet. Es kann also im Code durchaus mehrere Zeichen lang sein wie z.B. "\n", "\u000b" oder so!). Somit kannst Du:
b1) char Variablen ähnlich integer variablen nutzen. (also sowas wie ein if (i == 3): i kann dabei ein in oder ein char sein)
b2) char Literale wie Zahlen behandeln. '0' ist also intern auch nur eine Zahl. Damit sind auch Prüfungen mit < oder > möglich: if (ch > '0')....
Was jetzt noch fehlt ist eine Art Zuordnung von Zahlen zu Zeichen. Welches Zeichen entspricht welcher Zahl? Dazu kannst Du einfach einmal ein paar Zeichen als Zahl ausgeben lassen. Also z.B.
System.out.println("'0': " + (int)'0');
Oder du schaust Dir einfach einmal an, was da so übliche Werte sind. Es finden sich ASCII Tabellen, die für die üblichen Zeichen korrekt sind. (Achtung: Umlaute und andere spezielle Zeichen stimmen nicht! Intern werden Zeichen im sogenannten UTF-16 Format gespeichert!):
ASCII-Tabelle
www.torsten-horn.de
Wenn Du Dir das anschaust, dann findest du die Werte: '0' ist 48, '1' ist 49, ... '9' ist 57.
Damit kannst du also ein Zeichen prüfen in der Form:
if (ch >= '0' && ch <= '9')
==> Du prüfst, ob das Zeichen im Bereich von '0' bis '9' ist.
An dieser Stelle möchte ich auch noch darauf hinweisen, dass es eine Klasse Character gibt, die auch entsprechende Methoden anbietet. Da kann man auch einfach prüfen, ob ein Zeichen eine Ziffer ist oder nicht. Aber ich habe es so verstanden, dass es um ein generelles Verständnis geht, daher die lange Erklärung.
c) Switch / Case Anweisung
Eine switch Anweisung ist immer dann sinnvoll, wenn es um mehrere Optionen geht bei einer Variable:
if (x == 1) {
} else if (x == 2) {
} else if (x == 3) {
} else if (x == 4) {
}
Bei mehreren Abfragen auf unterschiedliche Variablen ist dies erst einmal nicht anzuwenden. Und so wie ich das verstanden habe, willst Du ja unterschiedliche Variablen prüfen: ist a eine Ziffer? ist b ein Punkt? ist c eine Ziffer?
Da sehe ich erst einmal keine switch Anweisung.