2010-11-30 14 views
0

Wie groß wäre die Speichergröße/Speicherplatz in Bits/Bytes belegt durch Array wie folgt.Array-Größe in Java

final String[] objects_user1={"1","10","100","1000","10000"}; 
+3

Hausaufgabe? –

+2

Ich hoffe, das ist nicht für einen Live-Test oder ein Interview .... –

+0

Kann nicht für ein Interview sein, da Sie nicht wirklich wissen müssen – willcodejavaforfood

Antwort

5

ROUGH ESTIMATE: 12 Bytes für Array-Header, 4x5 Bytes für die Zeiger (8x5, wenn Sie auf einem 64-Bit-jvm), jede Zeichenfolge hat 3 Ints (+ 3x4 Bytes) und ein Array von Zeichen (+12 Bytes für Header + Länge der Zeichenfolge x2, weil es char).

+0

Ja, das frage ich mich auch. Ich denke, wenn Peole Downvote wird, sollten sie dir wenigstens sagen warum. Ich werde Ihnen eine Dankesrede geben, um es aufzuheben. :-) – Jay

+0

@Jay: Danke. –

0

Unmöglich zu sagen, da es ein Implementierungsdetail der JRE ist, die Sie verwenden.

0

Sie können eine ungefähre Antwort erhalten, indem Sie nach der Speicherzuweisung den verfügbaren Heapspeicher vor & abfragen. Führen Sie es mehrmals & berechnen den Durchschnitt, & wird es ziemlich nah an der richtigen Antwort sein. Aber auch hier gilt die Antwort nur für die spezifische JVM, auf der sie ausgeführt wird.