• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

UnsupportedOperationException

MiK

Geoguru
Silas schrieb:
Laut http://en.wikipedia.org/wiki/IEEE_754 und http://en.wikipedia.org/wiki/NaN ist NaN aber per Definition niemals gleich NaN, sodass auch Double.NaN == Double.NaN false ergeben sollte.
Und genau dieses Verhalten habe ich schon mal erlebt, mit gleichem Code für unterschiedliche Plattformen kompiliert. Es hat sich dann unterschiedlich verhalten.

Deswegen würde ich auch generell auf die Verwendung von NaN als Indikator verzichten. Am besten auch von den geschschachtelten switch/case weg. Vielleicht besser in einem ersten switch/case in eine einheitliche Zwischeneinheit wandeln und in einem zweiten switch/case dann in die Zieleinheit. Das macht das ganze wohl übersichtlicher und wartbarer. Außerdem kann man dann einfach unter "default" ein bool setzen, dass am Ende zur Überprüfung dient.
 

Engywuck

Geowizard
MiK schrieb:
Am besten auch von den geschschachtelten switch/case weg. Vielleicht besser in einem ersten switch/case in eine einheitliche Zwischeneinheit wandeln und in einem zweiten switch/case dann in die Zieleinheit.
Sehr gute Idee. Hab ich gleich mal umgesetzt. Jetzt ist es doch viel lesbarer, erweiterbarer und wartungsfreundlicher :)

Gruß,
E.
 

MiK

Geoguru
Warum hast Du nicht für alle Konvertierungen die gleiche Zwischeneinheit benutzt? Hat das numerische Vorteile?
 

Engywuck

Geowizard
An nummerische Vorteile habe ich hier nicht gedacht, aber an Vorteile der Nachvollziehbarkeit. Wenn ich z.B. Kilometer als Standard definiere müsste ich, wenn ich Fuß in Yards umrechnen will, erstmal Fuß in Kilometer und dann Kilometer in Yards umrechnen und jeweils Umrechnungsfaktoren dafür liefern. Das ist etwas unübersichtlich, finde ich.
So bleiben meine Faktoren innerhalb des metrischen Systems und ich kann sie leichter nachvollziehen. Nummerisch spare ich mir sogar manchmal Multiplikationen, nämlich wie im oben gezeigten Beispiel, wenn meine Standardeinheit außerhalb des Systems liegt, innerhalb dessen ich Umrechnungen durchführen will.

Gruß,
E.

P.S.: Ich hab ja wirklich nichts gegen Kritik und Ideen, aber muss dennoch mal auf Pfeffers Posting verweisen. Wenn jedes noch so winzige und nebensächliche Detail, dass man programmiert, von den alten Hasen mit "Das hättest Du aber auch so machen können" kommentiert wird, vergeht einem schon irgendwie die Lust. Wie gesagt, nichts gegen sinnvolle und konstruktive Kritik, Anregungen und Diskussionen - aber hier wirkt es manchmal doch etwas besserwisserisch.
So, musste auch mal gesagt werden.
 

MiK

Geoguru
Ich wollte nur den tieferen Sinn in dem meiner Meinung nach etwas umständlichen Code verstehen. Ich hätte ihn anders einfacher verständlich empfunden. Aber letztendlich ist es mir eigentlich egal.
 
Oben