[Code Source] Ajouter un tableau dans un tableau avec Array.Copy

Le but de ce code est d’ajouter tab1() dans tab2() en utilisant la fonction « Array.Copy ».

  • Remplir tab1 de 1 à 20 et Copier tab1 dans tab2
  • Remplir tab1 de 21 à 40 et Copier tab1 dans tab2
  • Remplir tab1 de 41 à 50 et Copier tab1 dans tab2

C’est un exemple simple qui permet de voir le résultat dans une Form, qui contient simplement un « Bouton » pour lancer le remplissage de tab2() et un « Textbox »pour afficher le résultat.

Public Class Form1
 
    Dim tab1() As Integer
    Dim nb1 As Integer
    Dim tab2() As Integer
    Dim nb2 As Integer
 
    Private Function Remplir_Tab1(deb As Integer, fin As Integer) As Integer
        nb1 = 0
        ReDim tab1(nb1)
        For i = deb To fin
            nb1 += 1
            ReDim Preserve tab1(nb1)
            tab1(nb1) = i
        Next
        Return nb1
    End Function
 
    Private Function Ajouter_Tab1_dans_Tab2(id As Integer, nb As Integer) As Integer
        nb2 = nb2 + nb
        ReDim Preserve tab1(nb2)
        ReDim Preserve tab2(nb2)
        Array.Copy(tab1, 1, tab2, id, nb)
        Return nb
    End Function
 
    Private Sub Afficher_tab2()
        TextBox1.Text = ""
        For i = 1 To nb2
            TextBox1.Text = TextBox1.Text & tab2(i) & ","
        Next
    End Sub
 
    Private Sub Remplir_Tab2()
        Dim id_deb As Integer = 1
        'Remplir tab1 de 1 à 20 et Copier tab1 dans tab2
        id_deb = id_deb + Ajouter_Tab1_dans_Tab2(id_deb, Remplir_Tab1(1, 20))
        'Remplir tab1 de 21 à 40 et Copier tab1 dans tab2
        id_deb = id_deb + Ajouter_Tab1_dans_Tab2(id_deb, Remplir_Tab1(21, 40))
        'Remplir tab1 de 41 à 50 et Copier tab1 dans tab2
        id_deb = id_deb + Ajouter_Tab1_dans_Tab2(id_deb, Remplir_Tab1(41, 50))
        'Afficher Tab2 dans le console
        Afficher_tab2()
    End Sub
 
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Remplir_Tab2()
    End Sub
 
End Class

Le plus important dans le code ci-dessus est de penser à redimensionner les tableaux au fur et à mesure de la copie « Ajouter_Tab1_dans_Tab2 ».

Soyez le premier à commenter

Poster un Commentaire

Votre adresse de messagerie ne sera pas publiée.


*