devxlogo

Simple variables are always faster than array elements

Simple variables are always faster than array elements

Reading and writing an item of an array is always slower than accessing a simple variable. Therefore, if you need to repeatedly use the same array item in a loop, you should assign it to a temporary variable and use that variable instead. I’ve included an example of this technique that scans an Integer arrays to see if there are any duplicate values:

Function AnyDuplicates(intArray() As Integer) As Boolean    ' returns True if the array holds duplicate values    Dim i As Long, j As Long,     Dim lastItem As Long    Dim value As Integer    ' evaluate UBound() just once    lastItem = UBound(intArray)    For i = LBound(intArray) To lastItem        ' storing intArray(i) into a non-array variable        ' saves an indexing operation within the inner loop        value = intArray(i)        For j = i + 1 To lastItem            If value = intArray(j) Then                AnyDuplicates = True                Exit Function            End If        Next    Next    ' no duplicates were found    AnyDuplicates = FalseEnd Function

The routine is based upon two nested loops and saves CPU time by caching the value of intArray(i) into a regular, non-array variable. This simple trick makes the routine up to 80 percent faster.

See also  Professionalism Starts in Your Inbox: Keys to Presenting Your Best Self in Email
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist