Hallo liebes Javaforum,
ich bin zwar noch ein relativer Neuling in Java, glaube aber das ich mit meinem Anliegen hier richtig bin.
Momentan habe ich das Problem, dass ich ein mehrdimensionales, sagen wir erstmal Objekt-Array, erstellen möchte und in den Objekten Variablen speichern möchte, die später zur weiteren Verarbeitung genutzt werden. Diese Variablen werden pro Typ jedoch sehr einseitig sein, so habe ich beispielsweise für Typ 1 einen bolean der true ist, einen Integer der auf 3 ist usw., für Typ 2 ist der bolean beispielweise auf false, der Integer auf 6 usw...
Meine Frage dazu: Ist es, bzw. wann ist es Sinnvoll dieses Array einfach nur zu einem Byte Integer zu ändern und später die logik über den Teil der Arrays rüberlaufen zu lassen, welche grade benötigt werden ? Dabei soll dann die Logik je nachdem was in dem Array drinsteht dem Programm bestimmte Werte für bestimmte Arrayfelder übergeben. z.B. In Stelle [1][2][3][4] ist ne 1 also ist der boolean "anzeigen" auf true und der Integer "größe" auf 5 und auf Stelle [1][2][3][7] ist ne 2 also ist der boolean "anzeigen" auf false und der Integer "größe" auf 10.
Bin mir auch gar nicht sicher, ob das so einfach geht ^^, naja ihr werdet mich schon berichtigen...
Es soll dabei um min. 3-4 dimensionale Arrays gehen, die zwischen 5 Mio. und 100 Mio. einträge haben. Davon werden aber nur zwischen 250k und 2 Mio zu einer Zeit benötigt...
Wenn ich versuche Objekte in der größenzahl zu speichern komme ich auf min. die 20-igfache Datenmenge die dann im Arbeitsspeicher drin wäre... Keine Ahnung was jetzt Sinnvoller ist, oder ob nicht die "umrechnung" über die Logik wesentlich aufwändiger wäre als wenn ich alles als Objekte beim Programmstart in einem Objektarray abspeichere.
Hoffe ihr versteht was ich meine, und vielen Dank schon mal für die Beantwortung!
Viele Grüße
Shardic
ich bin zwar noch ein relativer Neuling in Java, glaube aber das ich mit meinem Anliegen hier richtig bin.
Momentan habe ich das Problem, dass ich ein mehrdimensionales, sagen wir erstmal Objekt-Array, erstellen möchte und in den Objekten Variablen speichern möchte, die später zur weiteren Verarbeitung genutzt werden. Diese Variablen werden pro Typ jedoch sehr einseitig sein, so habe ich beispielsweise für Typ 1 einen bolean der true ist, einen Integer der auf 3 ist usw., für Typ 2 ist der bolean beispielweise auf false, der Integer auf 6 usw...
Meine Frage dazu: Ist es, bzw. wann ist es Sinnvoll dieses Array einfach nur zu einem Byte Integer zu ändern und später die logik über den Teil der Arrays rüberlaufen zu lassen, welche grade benötigt werden ? Dabei soll dann die Logik je nachdem was in dem Array drinsteht dem Programm bestimmte Werte für bestimmte Arrayfelder übergeben. z.B. In Stelle [1][2][3][4] ist ne 1 also ist der boolean "anzeigen" auf true und der Integer "größe" auf 5 und auf Stelle [1][2][3][7] ist ne 2 also ist der boolean "anzeigen" auf false und der Integer "größe" auf 10.
Bin mir auch gar nicht sicher, ob das so einfach geht ^^, naja ihr werdet mich schon berichtigen...
Es soll dabei um min. 3-4 dimensionale Arrays gehen, die zwischen 5 Mio. und 100 Mio. einträge haben. Davon werden aber nur zwischen 250k und 2 Mio zu einer Zeit benötigt...
Wenn ich versuche Objekte in der größenzahl zu speichern komme ich auf min. die 20-igfache Datenmenge die dann im Arbeitsspeicher drin wäre... Keine Ahnung was jetzt Sinnvoller ist, oder ob nicht die "umrechnung" über die Logik wesentlich aufwändiger wäre als wenn ich alles als Objekte beim Programmstart in einem Objektarray abspeichere.
Hoffe ihr versteht was ich meine, und vielen Dank schon mal für die Beantwortung!
Viele Grüße
Shardic
Zuletzt bearbeitet: