JavaSystem.Arraycopy(Object, Int32, Object, Int32, Int32) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Copie un tableau à partir du tableau source spécifié, commençant à la position spécifiée, à la position spécifiée du tableau de destination.
[Android.Runtime.Register("arraycopy", "(Ljava/lang/Object;ILjava/lang/Object;II)V", "")]
public static void Arraycopy(Java.Lang.Object src, int srcPos, Java.Lang.Object dest, int destPos, int length);
[<Android.Runtime.Register("arraycopy", "(Ljava/lang/Object;ILjava/lang/Object;II)V", "")>]
static member Arraycopy : Java.Lang.Object * int * Java.Lang.Object * int * int -> unit
Paramètres
- src
- Object
tableau source.
- srcPos
- Int32
position de départ dans le tableau source.
- dest
- Object
tableau de destination.
- destPos
- Int32
position de départ dans les données de destination.
- length
- Int32
nombre d’éléments de tableau à copier.
- Attributs
Remarques
Copie un tableau à partir du tableau source spécifié, commençant à la position spécifiée, à la position spécifiée du tableau de destination. Une sous-séquence de composants de tableau est copiée à partir du tableau source référencé par src le tableau de destination référencé par dest. Le nombre de composants copiés est égal à l’argument length . Les composants situés à des positions srcPossrcPos+length-1 dans le tableau source sont copiés dans des positions destPos , destPos+length-1respectivement, du tableau de destination.
Si les src arguments et dest les arguments font référence au même objet de tableau, la copie est effectuée comme si les composants à des positions srcPossrcPos+length-1 ont d’abord été copiés dans un tableau temporaire avec length des composants, puis le contenu du tableau temporaire a été copié en positions destPos par le biais destPos+length-1 du tableau de destination.
Si dest c’est nullle cas, une NullPointerException est levée.
Si src c’est nullle cas, un NullPointerException est levée et le tableau de destination n’est pas modifié.
Sinon, si l’un des éléments suivants a la valeur true, un ArrayStoreException est levée et la destination n’est pas modifiée : <ul><li>L’argument src fait référence à un objet qui n’est pas un tableau.
<li>L’argument dest fait référence à un objet qui n’est pas un tableau.
<li>L’argument et src l’argument dest font référence aux tableaux dont les types de composants sont des types primitifs différents.
<li>L’argument src fait référence à un tableau avec un type de composant primitif et l’argument dest fait référence à un tableau avec un type de composant de référence.
<li>L’argument src fait référence à un tableau avec un type de composant de référence et l’argument dest fait référence à un tableau avec un type de composant primitif.
</ul>
Sinon, si l’un des éléments suivants a la valeur true, un IndexOutOfBoundsException est levée et la destination n’est pas modifiée : <ul><li>L’argument srcPos est négatif.
<li>L’argument destPos est négatif.
<li>L’argument length est négatif.
<li>srcPos+length est supérieur src.lengthà , longueur du tableau source.
<li>destPos+length est supérieur dest.lengthà , longueur du tableau de destination.
</ul>
Sinon, si un composant réel du tableau source à partir d’une position srcPossrcPos+length-1 ne peut pas être converti en type de composant du tableau de destination par conversion d’affectation, un ArrayStoreException élément est levée. Dans ce cas, laissez <b>k</b> être le plus petit entier non négatif inférieur à la longueur, de sorte que src[srcPos+k] ne puisse pas être converti en type de composant du tableau de destination ; lorsque l’exception est levée, les composants de tableau source provenant de positions srcPos par srcPos+k-1 ont déjà été copiés vers les positions destPos du tableau de destination par destPos+k-1 et aucune autre position du tableau de destination n’a été modifiée. (En raison des restrictions déjà détaillées, ce paragraphe s’applique uniquement à la situation où les deux tableaux ont des types de composants qui sont des types de référence.)
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.