pfeffer
Geowizard
warum steigen wir nicht tatsächlich gleich auf ein binäres Format um?
Das würde den Interpretationsuafwand stark reduzieren und die Dateigröße (Lese-Aufwand) auch. - Hmm - naja, vielleicht bringt es doch nicht so viel, schließlich sind nach den Änderungen von Engywuck noch imn Wesentlichen Strings übrig, deren binäre Speicherung kaum Vorteile bringen dürfte.
Umwandlung Byte <-> Long dürfte wohl etwa so gehen:
(long) b << 3*8 | l
und umgekehrt
(byte) (( l >> 3*8 ) & 0xff)
ein einzelnes Bit abfragen so
return (l & (1 << bitpos)) > 0
da lohnt es sich wohl eher nicht, das Ergebnis dieser Abfrage in einem boolean zu speichern. Man kann statt einem Getter auch 1 << bitpos in eine finale Konstante packen und dann ohne getter einfach abfragen:
if ( (ch.status & CacheHolder.ISBLACK) > 0) { nicht anzeigen }
Das würde dann den Getter-Aufruf ersparen. Ich fänd das - glaub ich - die beste Lösung.
Gruß,
Pfeffer.
Das würde den Interpretationsuafwand stark reduzieren und die Dateigröße (Lese-Aufwand) auch. - Hmm - naja, vielleicht bringt es doch nicht so viel, schließlich sind nach den Änderungen von Engywuck noch imn Wesentlichen Strings übrig, deren binäre Speicherung kaum Vorteile bringen dürfte.
Umwandlung Byte <-> Long dürfte wohl etwa so gehen:
(long) b << 3*8 | l
und umgekehrt
(byte) (( l >> 3*8 ) & 0xff)
ein einzelnes Bit abfragen so
return (l & (1 << bitpos)) > 0
da lohnt es sich wohl eher nicht, das Ergebnis dieser Abfrage in einem boolean zu speichern. Man kann statt einem Getter auch 1 << bitpos in eine finale Konstante packen und dann ohne getter einfach abfragen:
if ( (ch.status & CacheHolder.ISBLACK) > 0) { nicht anzeigen }
Das würde dann den Getter-Aufruf ersparen. Ich fänd das - glaub ich - die beste Lösung.
Gruß,
Pfeffer.