Visual Basic .NET(VB.NET)でプログラミングをしていると、配列の要素を並べ替えたい場面がよくあります。例えば、名前のリストをアルファベット順に並べたり、数値を昇順に並べたりする必要があるでしょう。そんなときに便利なのがArray.Sort
メソッドです。この記事では、VB.NETのArray.Sort
メソッドの使い方を、初心者の方にも分かりやすく解説します。
目次
Array.Sortメソッドの基本的な使い方
Array.Sort
メソッドは、配列の要素を昇順(小さい順)に並べ替えます。文字列の場合はアルファベット順、数値の場合は小さい数から大きい数の順になります。
1. 数値配列のソート
まずは、整数の配列をソートする簡単な例を見てみましょう。
Module ArraySortExample
Sub Main()
' 整数配列を宣言と初期化
Dim numbers() As Integer = {5, 2, 8, 1, 9, 3, 7, 4, 6}
Console.WriteLine("ソート前:")
PrintArray(numbers)
' 配列をソート
Array.Sort(numbers)
Console.WriteLine("ソート後:")
PrintArray(numbers)
End Sub
' 配列を表示するサブルーチン
Sub PrintArray(arr As Integer())
For Each num In arr
Console.Write(num & " ")
Next
Console.WriteLine()
End Sub
End Module
この例では、ランダムな順序の整数配列をソートしています。Array.Sort
メソッドを呼び出すだけで、配列が昇順に並べ替えられます。
2. 文字列配列のソート
次に、文字列の配列をソートする例を見てみましょう。
Module StringArraySortExample
Sub Main()
' 文字列配列を宣言と初期化
Dim fruits() As String = {"バナナ", "リンゴ", "オレンジ", "ぶどう", "メロン"}
Console.WriteLine("ソート前:")
PrintArray(fruits)
' 配列をソート
Array.Sort(fruits)
Console.WriteLine("ソート後:")
PrintArray(fruits)
End Sub
' 配列を表示するサブルーチン
Sub PrintArray(arr As String())
For Each fruit In arr
Console.Write(fruit & " ")
Next
Console.WriteLine()
End Sub
End Module
文字列の場合、アルファベット順(日本語の場合は五十音順)にソートされます。
Array.Sortメソッドの応用
Array.Sort
メソッドは、基本的な使い方だけでなく、より高度な並べ替えにも対応しています。
3. 降順でのソート
デフォルトでは昇順にソートされますが、Array.Reverse
メソッドと組み合わせることで降順にソートできます。
Module DescendingSortExample
Sub Main()
Dim numbers() As Integer = {5, 2, 8, 1, 9, 3, 7, 4, 6}
Console.WriteLine("元の配列:")
PrintArray(numbers)
' 昇順にソート
Array.Sort(numbers)
' 配列を逆順にする
Array.Reverse(numbers)
Console.WriteLine("降順ソート後:")
PrintArray(numbers)
End Sub
Sub PrintArray(arr As Integer())
For Each num In arr
Console.Write(num & " ")
Next
Console.WriteLine()
End Sub
End Module
この例では、まずArray.Sort
で昇順にソートし、その後Array.Reverse
で配列を逆順にすることで、降順のソートを実現しています。
Array.Sort
メソッドは、VB.NETプログラミングにおいて非常に便利なツールです。基本的な使い方は簡単ですが、カスタム比較子を使用することで複雑なソートにも対応できます。配列の並べ替えが必要な場面で、ぜひ活用してみてください。
コメント