Bird
Raised Fist0
Goprogramming~5 mins

Array length in Go

Choose your learning style10 modes available
Introduction
Knowing the length of an array helps you understand how many items it holds so you can work with all of them safely.
When you want to loop through all items in an array.
When you need to check if an array is empty before using it.
When you want to allocate space or resources based on the number of items.
When you want to compare sizes of two arrays.
When you want to avoid errors by not accessing beyond the array's end.
Syntax
Go
package main

import "fmt"

func main() {
    var numbers [5]int
    length := len(numbers)
    fmt.Println("Length of array:", length)
}
Use the built-in len() function to get the length of an array.
The length is fixed for arrays in Go and known at compile time.
Examples
An array with zero length returns 0.
Go
var emptyArray [0]int
fmt.Println(len(emptyArray))
An array with one element returns length 1.
Go
var singleElementArray [1]string
fmt.Println(len(singleElementArray))
An array with three elements returns length 3.
Go
var fruits [3]string = [3]string{"apple", "banana", "cherry"}
fmt.Println(len(fruits))
Sample Program
This program creates an array of 4 colors, prints the array, then prints its length using len().
Go
package main

import "fmt"

func main() {
    var colors [4]string = [4]string{"red", "green", "blue", "yellow"}
    fmt.Println("Array before:", colors)
    length := len(colors)
    fmt.Println("Length of array:", length)
}
OutputSuccess
Important Notes
Time complexity of len() on arrays is O(1) because length is stored with the array.
Space complexity is O(1) since no extra space is used to get length.
Common mistake: Trying to use len() on a nil slice or pointer without initialization causes errors.
Use len() on arrays when you need to know the fixed size; for slices, len() gives the current number of elements.
Summary
Use len() to find how many items are in an array.
Array length is fixed and known at compile time in Go.
Knowing length helps avoid errors when accessing array elements.

Practice

(1/5)
1. What does the len() function return when used with an array in Go?
easy
A. The memory size of the array in bytes
B. The number of elements in the array
C. The capacity of the array's underlying slice
D. The last element of the array

Solution

  1. Step 1: Understand the purpose of len() in Go

    The len() function returns the count of elements in arrays, slices, maps, and strings.
  2. Step 2: Apply len() to an array

    When used on an array, len() returns the fixed number of elements it holds.
  3. Final Answer:

    The number of elements in the array -> Option B
  4. Quick Check:

    len(array) = number of elements [OK]
Hint: len() always gives count of elements in an array [OK]
Common Mistakes:
  • Confusing len() with capacity
  • Thinking len() returns memory size
  • Assuming len() returns last element
2. Which of the following is the correct way to get the length of an array named arr in Go?
easy
A. len(arr)
B. arr.length
C. size(arr)
D. length(arr)

Solution

  1. Step 1: Recall Go syntax for length

    In Go, the built-in function len() is used to get the length of arrays and slices.
  2. Step 2: Check each option

    Only len(arr) is valid syntax; others are invalid or do not exist in Go.
  3. Final Answer:

    len(arr) -> Option A
  4. Quick Check:

    Use len() function for array length [OK]
Hint: Use len(array) to get length, not dot or other functions [OK]
Common Mistakes:
  • Using dot notation like arr.length
  • Using non-existent functions like length() or size()
  • Confusing with other languages' syntax
3. What will be the output of this Go program?
package main
import "fmt"
func main() {
    arr := [4]int{10, 20, 30, 40}
    fmt.Println(len(arr))
}
medium
A. 0
B. 3
C. 4
D. Compilation error

Solution

  1. Step 1: Analyze the array declaration

    The array arr is declared with 4 elements: 10, 20, 30, 40.
  2. Step 2: Understand len(arr)

    The len() function returns the number of elements, which is 4.
  3. Final Answer:

    4 -> Option C
  4. Quick Check:

    len([4]int{...}) = 4 [OK]
Hint: Count elements inside [ ] to find length [OK]
Common Mistakes:
  • Counting elements incorrectly
  • Thinking len() returns last index (3)
  • Expecting runtime error
4. Identify the error in this Go code snippet:
package main
import "fmt"
func main() {
    arr := [3]int{1, 2, 3}
    fmt.Println(len(arr))
    fmt.Println(arr[3])
}
medium
A. fmt.Println cannot print arrays
B. len(arr) is invalid for arrays
C. Array declaration syntax is wrong
D. Accessing arr[3] causes an index out of range error

Solution

  1. Step 1: Check array length and indexing

    The array arr has length 3, so valid indices are 0, 1, and 2.
  2. Step 2: Identify invalid index access

    Accessing arr[3] is out of range and causes a runtime panic.
  3. Final Answer:

    Accessing arr[3] causes an index out of range error -> Option D
  4. Quick Check:

    Array indices go from 0 to len-1 [OK]
Hint: Array indices start at 0, max index = length-1 [OK]
Common Mistakes:
  • Assuming len(arr) is invalid
  • Thinking fmt.Println can't print arrays
  • Confusing array length with capacity
5. Given two arrays in Go:
arr1 := [5]int{1, 2, 3, 4, 5}
arr2 := [3]int{10, 20, 30}
Which expression correctly checks if arr2 has fewer elements than arr1?
hard
A. len(arr2) < len(arr1)
B. len(arr1) < len(arr2)
C. arr2.length < arr1.length
D. size(arr2) < size(arr1)

Solution

  1. Step 1: Identify lengths of both arrays

    arr1 has length 5, arr2 has length 3.
  2. Step 2: Write correct comparison syntax

    Use len() to get lengths. To check if arr2 is smaller, compare len(arr2) < len(arr1).
  3. Final Answer:

    len(arr2) < len(arr1) -> Option A
  4. Quick Check:

    len(arr2) = 3 < 5 = len(arr1) [OK]
Hint: Use len() and compare lengths directly [OK]
Common Mistakes:
  • Using wrong function names like length or size
  • Reversing comparison order
  • Using dot notation for length
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard