MENU

【VB.NET】配列の要素数を変更するには

Visual Basic .NET(VB.NET)のプログラミングにおいて、配列の要素数を変更する必要が出てくることがあります。データの追加や削除に応じて配列のサイズを調整することで、メモリを効率的に使用し、プログラムのパフォーマンスを向上させることができます。この記事では、VB.NETで配列の要素数を変更する方法について、初心者の方にも分かりやすく解説します。

目次

VB.NETで配列の要素数を変更する方法

VB.NETでは、配列の要素数を変更するための主な方法が2つあります。それぞれの方法について、サンプルコードとともに説明します。

1. ReDimステートメントを使用する方法

ReDimステートメントは、既存の配列の要素数を変更するために使用されます。これは最も一般的で直接的な方法です。

Module ArrayResizeExample
    Sub Main()
        ' 初期配列を宣言
        Dim numbers() As Integer = {1, 2, 3, 4, 5}
        
        Console.WriteLine("初期配列:")
        PrintArray(numbers)
        
        ' 配列のサイズを7に拡大
        ReDim Preserve numbers(6)
        numbers(5) = 6
        numbers(6) = 7
        
        Console.WriteLine("拡大後の配列:")
        PrintArray(numbers)
        
        ' 配列のサイズを3に縮小
        ReDim Preserve numbers(2)
        
        Console.WriteLine("縮小後の配列:")
        PrintArray(numbers)
    End Sub
    
    Sub PrintArray(arr As Integer())
        For Each num As Integer In arr
            Console.Write(num & " ")
        Next
        Console.WriteLine()
    End Sub
End Module

このサンプルコードでは、ReDim Preserveを使用して配列のサイズを変更しています。Preserveキーワードは既存のデータを保持するために重要です。これを省略すると、配列の内容が失われてしまいます。

2. Array.Resizeメソッドを使用する方法

Array.Resizeメソッドは、.NET Frameworkの機能を利用して配列のサイズを変更します。このメソッドは、配列への参照を ByRef で渡す必要があります。

Imports System

Module ArrayResizeMethodExample
    Sub Main()
        ' 初期配列を宣言
        Dim fruits() As String = {"りんご", "バナナ", "オレンジ"}
        
        Console.WriteLine("初期配列:")
        PrintArray(fruits)
        
        ' 配列のサイズを5に拡大
        Array.Resize(fruits, 5)
        fruits(3) = "いちご"
        fruits(4) = "メロン"
        
        Console.WriteLine("拡大後の配列:")
        PrintArray(fruits)
        
        ' 配列のサイズを2に縮小
        Array.Resize(fruits, 2)
        
        Console.WriteLine("縮小後の配列:")
        PrintArray(fruits)
    End Sub
    
    Sub PrintArray(arr As String())
        For Each fruit As String In arr
            Console.Write(fruit & " ")
        Next
        Console.WriteLine()
    End Sub
End Module

Array.Resizeメソッドは、配列の型を自動的に推論するため、さまざまな型の配列に対して使用できます。

配列の要素数を変更する際の注意点:

  1. 配列を拡大する場合、新しい要素にはデフォルト値(数値型の場合は0、参照型の場合はNothing)が設定されます。
  2. 配列を縮小する場合、末尾の要素が失われます。
  3. パフォーマンスの観点から、頻繁な配列のサイズ変更は避けるべきです。代わりに、List(Of T)などの動的コレクションの使用を検討してください。

これらの方法を適切に使用することで、VB.NETプログラムでの配列の管理がより柔軟になり、効率的なメモリ使用が可能になります。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次