Wie parst man sinnvoll?

Status
Nicht offen für weitere Antworten.

mephi

Bekanntes Mitglied
Hi,
stehe gerade vor dem Problem als parameter für ein Plugin doch sehr komische Werte zu bekommen und da ist mir aufgefallen.. ich hab mir noch nie Gedanken gemacht wie man am sinnvollsten parst.
Bisher sind es 3 Parameter mit 3 möglichen Werten, also könnte ich ja einfach 9 if abfragen machen. aber das ist doch doof.
Wie macht ihr sowas?
 

0xdeadbeef

Top Contributor
So pauschal ist das natürlich schlecht zu beantworten. Bei einem Parser für eine formale Syntax (Programmiersprachen, mathematische Ausdrücke) hat man ja ein gewissen Kontingent an Schlüsselwörtern und Operatoren bzw. Unterbrechungszeichen ("break characters" - also beispielsweise Space oder Semikolon).

Man zerlegt den zu parsenden String dann erstmal in Tokens anhand der Operatoren bzw. Unterbrechungszeichen. Die zulässigen Operatoren und Schlüsselwörter hat man dann ja in irgendeiner leicht zugreifbaren Datenstruktur (Array/Listen) abgelegt, kann also den String bequem in (numerische) Tokens überführen. Alles was danach noch nicht numerisch vorliegt, ist ein Parameter/Operand und muß entsprechend behandelt werden (z.B. Stringdarstellung einer Zahl in Zahl konvertieren).

Wie auch immer: die relevanten Schlüsselwörter usw. hat man ja bereits als Tokens und die kann man bequem in einer Switch-Struktur abfragen.

Bei einem echten Parser kommt man en diesem Vorgehen quasi nicht vorbei, wenn man es einigermaßen übersichtlich halten will. Bei sehr kleinen/überschaubaren Parameterabfragen kann natürlich auch ein verschachteltes IF sinnvoll sein.
 
G

Gast

Gast
sollen parameter über den status eines objekts oder die funktionsweise einer methode bestimmen, sollten sie aus einem primitiven datentyp bestehen. boolean, int oder enum.

strings als parameter macht nur dann sinn, wenn sie entweder 1:1 für irgendwas übernommen werden (z.b. ein pfad zum speichern einer datei) oder wenn die methode tatsächlich informationen aus diesem string herauslesen soll (z.b. ein parser für mathematische funktionen).
 

mephi

Bekanntes Mitglied
die parameter kann ich nur über n string bekommen. und die parameter werden für verschiedene dinge gebraucht.
breite, align, float, border usw..
insgesagt 3 datentypen. int, string und boolean
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
8u3631984 Bilder in Datenbank speichern - sinnvoll Allgemeine Java-Themen 5
G Methoden für die Zukunft sinnvoll? Allgemeine Java-Themen 4
W Wieviele Threads sind sinnvoll? Allgemeine Java-Themen 8
J wie sollte man sinnvoll seinen Code aufteilen Allgemeine Java-Themen 6
I Laden von Informationen aus Dateien: Austauschbarkeit: 2 Dateien sinnvoll? Allgemeine Java-Themen 2
M Welche Exceptionbehandlung ist sinnvoll? Allgemeine Java-Themen 3
perlenfischer1984 Wann ist ein Parameter Check sinnvoll Allgemeine Java-Themen 7
F Enums als innere Klasse sinnvoll? Allgemeine Java-Themen 3
C Best Practice [Arrays] Wie sinnvoll prüfen, ob Array primitive Datentypen enthält? Allgemeine Java-Themen 6
D Fehlgeschlagene Logins zählen... Was ist sinnvoll? Allgemeine Java-Themen 2
W JavaDoc Runtime-Exceptions: Wie sinnvoll anzeigen? Allgemeine Java-Themen 14
G Interface Laden der Konfiguration über Interfaces sinnvoll? Allgemeine Java-Themen 28
P Eclipse Java RCP mit Eclipse e4 - sinnvoll? Allgemeine Java-Themen 3
B Datentypen JMF: Player LinkedList sinnvoll? ca 30 kurze Sounddateien Allgemeine Java-Themen 3
S [THREADS] Thread sinnvoll beenden Allgemeine Java-Themen 2
S Welche Datenstruktur für verschiedene Sprachen sinnvoll? Allgemeine Java-Themen 2
O ist tiefes Kopieren sinnvoll? Allgemeine Java-Themen 14
M Geschützte Systemdateien sinnvoll umgehen bei listFiles() Allgemeine Java-Themen 7
A [gelöst] Dynamischen Webseitentest automatisieren mit Java sinnvoll? Allgemeine Java-Themen 6
V Empfangene Daten sinnvoll Puffern Allgemeine Java-Themen 3
H Extra-Thread sinnvoll für XML-Datei laden? Allgemeine Java-Themen 4
S Textfeld Parser sinnvoll? Allgemeine Java-Themen 3
M Wann ist MVC sinnvoll? Allgemeine Java-Themen 14
G Strings die Zahlen enthalten sinnvoll sortieren (A2 < A10 Allgemeine Java-Themen 4
T "Programming against the interface" sinnvoll? Allgemeine Java-Themen 18
F Viele generische Parameter sinnvoll? oder besser casten? Allgemeine Java-Themen 10
M wie sinnvoll parsen ? Allgemeine Java-Themen 4
A Als FINAL deklarieren -> sinnvoll? Allgemeine Java-Themen 16
K Regex Versucher 2 *Update - sinnvoll und schön* :) Allgemeine Java-Themen 6
Redfrettchen Rückgabe nicht sinnvoll: Exception oder null zurück? Allgemeine Java-Themen 9
G klassendesign. aber wie (sinnvoll)? Allgemeine Java-Themen 8

Ähnliche Java Themen


Oben