# Bedeutung von 0xFFFF



## Maria27 (1. Mai 2010)

Hallo,

im Buch "Java ist eine Insel" wird in einem Beispiel zum Dateien kopieren ein Byte-Array angelegt. Warum wird dort für die Anzahl der zu erzeugenden Elemente keine "normale" Zahl, sondern die hex-Schreibweise 0xFFFF angegeben und warum außgerechnet diese Anzahl?


```
byte[] buffer = new byte[ 0xFFFF ];
```


----------



## Sergeant_Pepper (1. Mai 2010)

Hi,
verrat mir bitte mal die Kapitelnr. bzw. die Seite, auf der das steht.

EDIT: 0xFFFF = 65535 = 64kB. Das ist der größte Wert("high value"), den man mit 2 Byte darstellen kann. 0xFFFF ist eben einfacher zu tippen (und zu merken) als 65535.
Möglicherweise ist es in dem Buch-Beispiel so, dass dieser high value Wert erforderlich ist.


----------



## Maria27 (1. Mai 2010)

Galileo Computing :: Java ist auch eine Insel (8. Auflage) – 14.3 Stream-Klassen und Reader/Writer am Beispiel von Dateien

Im Kapitel 14.3.3 Kopieren mit FileOutputStream und FileInputStream, 
Listing 14.17 cp.java

Es ist das Beispiel am Ende dieses Kapitels 14.3.3


----------



## Sergeant_Pepper (1. Mai 2010)

ok, habe mir das Kapiel angeguckt.
Aber mehr als in meiner 1. Antwort bei EDIT kann ich dir auch nicht sagen.

Es geht eben darum, die Größe eines Puffers festzulegen. Die Größe beeinflusst die Performance beim Verarbeiten einer Datei.
Etwas vereinfacht ausgedrückt: je größer der Puffer, um so weniger Festplattenzugriffe sind nötig.


----------



## Maria27 (1. Mai 2010)

Ok, dann scheint die Zahl wohl einfach ein beliebiges Beispiel zu sein.

Vielen Dank!


----------

