quelle sono stringhe. Pertanto l'ordinamento è giusto.
100 viene prima di 2
BAA viene prima di C
bisogna ordinare secondo criteri numerici
codice:
Option Strict On
Imports l = libreria.ModuloWeb
Imports System.Globalization
Module Module1
Sub Main(args As String())
Dim tmpStructure As New List(Of String)()
tmpStructure.Add("1.00")
tmpStructure.Add("100.00")
tmpStructure.Add("99.00")
tmpStructure.Add("4.40")
tmpStructure.Add("1.00")
tmpStructure.Add("1.00")
tmpStructure.Add("4.40")
tmpStructure.Sort(Function(x, y) Double.Parse(x, CultureInfo.InvariantCulture).CompareTo(Double.Parse(y, CultureInfo.InvariantCulture)))
For Each c As String In tmpStructure
Console.WriteLine(c)
Next
Console.Write("Premere un tasto per continuare . . . ") : Console.ReadKey()
End Sub
End Module