in java L'équivalent scala est Y aura-t-il un effet secondaire si je me soucie de la taille de l'opération ci-dessus? P> octet [] st = nouvel octet [4096] code>, implique que la taille du tableau
st code> ne dépasse pas 4096 octets. p>
ST: tableau [octet] = tableau () code> où la taille est inconnue. Si je lis un énorme fichier dans ce tableau, comment puis-je limiter la taille de la matrice? P>
3 Réponses :
var buffer = new Array[Byte](4 * 1024) Works just fine, and it behaves as expected.
Votre exemple Java ne produit pas de matrice avec une limite supérieure de sa taille, elle produit une matrice avec précision la taille indiquée, qui est fixée tout au long de sa vie. Les matrices Scala sont identiques à cet égard. De plus, ceci: attribue une matrice d'octet ("octet" en Java) de longueur 0. p> jusqu'à lire un fichier dans un tableau, si vous Doit traiter l'intégralité du fichier, puis essayer d'allouer l'espace requis et s'il échoue, vous ne pouvez pas continuer. p> p>
Si vous êtes en retard à la partie:
val buffer = new Array.ofDim[Byte](4 * 1024)