OVH Cloud OVH Cloud

Trié un List(Of T) ??

4 réponses
Avatar
Olivier
Bonjour

J'ai une class :
Class Personne
Public Nom As String
Public ID As Integer
End Class

J'ai une propriété generics :

Dim MesPersonnes As New List(Of Personne)

J'aimerai trié MesPersonnes sur la propriété Nom (par ordre alphabétique)

comment puis-je faire ?

merci
Olivier

4 réponses

Avatar
Stéphane L.
Bonjour Olivier,

Du tri à bulle (le plus simple à programmer), au tri dichotomique (le plus
rapide, testé et approuvé), trouvés sur internet :

http://www-ipst.u-strasbg.fr/ipst/deug-ti/aide-c/tris/

Merci à l'auteur de ce site.

PS : Ta classe ne devrait pas être 1 structure ?

Stéphane


"Olivier" a écrit dans le message de news:
%
Bonjour

J'ai une class :
Class Personne
Public Nom As String
Public ID As Integer
End Class

J'ai une propriété generics :

Dim MesPersonnes As New List(Of Personne)

J'aimerai trié MesPersonnes sur la propriété Nom (par ordre alphabétique)

comment puis-je faire ?

merci
Olivier





Avatar
TroXsA
Bonjour

Pourquoi ne pas copier ta list dans un ArrayList et apres utiliser la
propriete Sort
non ?

--
Mail : http://cerbermail.com/?rIXgaw9Xsl
Site : http://planetenova.free.fr/


"Olivier" a écrit dans le message de news:
%
Bonjour

J'ai une class :
Class Personne
Public Nom As String
Public ID As Integer
End Class

J'ai une propriété generics :

Dim MesPersonnes As New List(Of Personne)

J'aimerai trié MesPersonnes sur la propriété Nom (par ordre alphabétique)

comment puis-je faire ?

merci
Olivier





Avatar
[ Olivier ]
ben ...
j'ai fais aussi :

Class Personne
Public Nom As String
Public ID As Integer

Public Sub New(ByVal Nom As String, ByVal ID As Integer)
Nom = Nom
ID = ID
End Sub
End Class

Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load

Dim MesPersonnes As New ArrayList
MesPersonnes.Add(New Personne("DURAND", 1))
MesPersonnes.Add(New Personne("LEROIS", 2))
MesPersonnes.Add(New Personne("DUPOND", 3))

MesPersonnes.Sort()

End Sub
End Class


:: erreur : Failed to compare two elements in the array.
mais forcément ca marche pas, car comment peut-til savoir sur 'quoi' trié ?

olivier



"TroXsA" a écrit dans le message de news:
dkt67v$8r7$
Bonjour

Pourquoi ne pas copier ta list dans un ArrayList et apres utiliser la
propriete Sort
non ?

--
Mail : http://cerbermail.com/?rIXgaw9Xsl
Site : http://planetenova.free.fr/


"Olivier" a écrit dans le message de news:
%
Bonjour

J'ai une class :
Class Personne
Public Nom As String
Public ID As Integer
End Class

J'ai une propriété generics :

Dim MesPersonnes As New List(Of Personne)

J'aimerai trié MesPersonnes sur la propriété Nom (par ordre alphabétique)

comment puis-je faire ?

merci
Olivier









Avatar
[ Olivier ]
J'ai trouvé :
http://www.devcity.net/Articles/20/1/20020304.aspx

en adaptant un peu pour moi et ca marche.

Merci
Olivier



"Olivier" a écrit dans le message de news:
%
Bonjour

J'ai une class :
Class Personne
Public Nom As String
Public ID As Integer
End Class

J'ai une propriété generics :

Dim MesPersonnes As New List(Of Personne)

J'aimerai trié MesPersonnes sur la propriété Nom (par ordre alphabétique)

comment puis-je faire ?

merci
Olivier