De mon point de vue est que la raison qu' System.arraycopy
est originaire , au moins en partie historique.
Dans les premiers jours lorsque Java est seulement interprété, un code natif de la mise en œuvre de l' arraycopy
aurait été nettement plus rapide que son équivalent de la boucle écrit en Java. L' arraycopy
méthode aurait été essentiel dans la fabrication (par exemple) d'e/S et des performances graphiques supportable.
Bien sûr, les choses ont changé. Java est maintenant JIT compilé, et le code natif compilateur peut faire toutes sortes de choses intelligentes à faire de simples boucles d'aller vite. Donc, il n'est pas évident qu'un natif de la mise en œuvre de l' arraycopy
fait une grande différence, "intrinsèque" d'un traitement non-résister. Toutefois, le nom, la signature et la sémantique d' arraycopy
sont tellement ancrées qu'elles sont susceptibles de rester inchangé tant que Java (que nous connaissons) est utilisé.