Bonjour à tous,

Je suis à la recherche d'une méthode permettant de trier un Arraylist par le nombre de caractère de ses valeurs, mais je comprends pas bien comment fonctionne Sort avec la méthode IComparer.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 
 
    Private Sub arraySortCompare()
        Dim str As String = ""
 
        Dim list As New ArrayList
        list.Add("Australian")
        list.Add("Mongolian")
        list.Add("Russian")
        list.Add("Austrian")
        list.Add("Brazilian")
        list.Add("a")
        list.Add("de")
        list.Add("des")
        list.Add("un")
        list.Add("une")
 
        Dim oComparer = New cComparer()
        list.Sort(oComparer)
 
        Dim value As String
        For Each value In list
            str &= value & "<br/>"
        Next
 
        litRslt.Text = str
    End Sub
 
    Public Class cComparer
        Implements IComparer
        Public Function Compare(ByVal x As Object, ByVal y As Object) As Integer Implements IComparer.Compare
            Return New CaseInsensitiveComparer().Compare(y, x)
        End Function
    End Class
Merci pour votre aide.