Hallo zusammen,
ich bin gerade dabei Java zu lernen und versuche durch ausprobieren einige Sachen zu verstehen.
Als kleines Übungsprojekt habe ich mir ein kleinen Rechner gebastelt, der nur die Grundrechenarten kann, auf auf alle Regeln habe ich erst einmal verzichtet da es sich ja wie gesagt nur um eine Übung handelt.
Jetzt mein kleines Verständnis Problem:
Der Methode Auswertung übergebe ich einen String in dem die eingegebenen Rechenaufgabe steht. bsp. 3*6+5.
Da ich mit der Split Methode Expertentiere, versuche ich die Zahlen in das Array result zu speichern und die Rechenoperationen in dem Array zeichen.
Wenn ich das ganze in der Console ausgebe, wird alles was in result steht auch ausgegeben nur zeichen[0] ist ein Leerstring also ab zeichen[1] fangt dort erst die Ausgebe der Zeichen (Rechenoperationen) an.
Jetzt möchte ich gerne wissen warum das so ist und was ich dort beachten sollte ?
Der String mit der ganzen Aufgabe, wird ohne Leerzeichen übergeben.
Danke schon einmal für eure Antworten.
Gruß Mario
ich bin gerade dabei Java zu lernen und versuche durch ausprobieren einige Sachen zu verstehen.
Als kleines Übungsprojekt habe ich mir ein kleinen Rechner gebastelt, der nur die Grundrechenarten kann, auf auf alle Regeln habe ich erst einmal verzichtet da es sich ja wie gesagt nur um eine Übung handelt.
Jetzt mein kleines Verständnis Problem:
Der Methode Auswertung übergebe ich einen String in dem die eingegebenen Rechenaufgabe steht. bsp. 3*6+5.
Da ich mit der Split Methode Expertentiere, versuche ich die Zahlen in das Array result zu speichern und die Rechenoperationen in dem Array zeichen.
Wenn ich das ganze in der Console ausgebe, wird alles was in result steht auch ausgegeben nur zeichen[0] ist ein Leerstring also ab zeichen[1] fangt dort erst die Ausgebe der Zeichen (Rechenoperationen) an.
Jetzt möchte ich gerne wissen warum das so ist und was ich dort beachten sollte ?
Der String mit der ganzen Aufgabe, wird ohne Leerzeichen übergeben.
Danke schon einmal für eure Antworten.
Gruß Mario
Java:
public class Rechnen {
String wert;
String[] result;
String[] zeichen;
double ergebniss = 0;
void Auswertung(String wert) {
result = wert.split("[\\.\\+\\-\\*\\/]");
zeichen = wert.split("[0-9]");
System.out.println(zeichen[0]);
System.out.println(zeichen[1]);
System.out.println(zeichen[2]);
System.out.println(result[0]);
System.out.println(result[1]);
System.out.println(result[2]);
System.out.println(wert);
}
}