Trusted answers to developer questions
Trusted Answers to Developer Questions

Related Tags

solidity
arrays
communitycreator

What are arrays in Solidity?

Shubham Singh Kshatriya

An array is a collection of elements of the same type stored in memory, e.g., a list of people’s ages.

In Solidity, the size of the array can be fixed or dynamic.

Syntax for array declaration

dataType[size] arrayName = <elements>;
  • dataType: The data type of the elements present in the array. It should be a valid Solidity data type.
  • arrayName: The name of the array.
  • size: The size of the array. It should not be predefined in the case of a dynamic-size array.
  • elements: The elements of the array.

Example 1

In the code snippet below, we create a fixed-size array.

pragma solidity ^0.5.0;

contract fixedArray {
  // declare a fixed size array
  int[5] data;

  // function to populate array
  function populate() public returns (int[5] memory) {
    data = [9, 2, 8, 4, 6];
    return data;
  }
}
Fixed-size array example

Explanation

In the code snippet above:

  • Line 3: We create a contract-type fixedArray.

  • Line 5: We declare a fixed-size array data of integer type and give it a size of 5.

  • Line 8: We create a function populate.

  • Line 9: We initialize the data array with some elements.

  • Line 10: We return the data array.

Note: Since the data array is a fixed-size array of length five, an error will be thrown if we try to add more than five elements.

Example 2

In the code snippet below, we create a dynamic-size array.

pragma solidity ^0.5.0;

contract dynamicArray {
  // declare a dynamic size array
  int[] data;

  // function to populate array
  function populate() public returns (int[] memory) {
    data = [9, 2, 8, 4, 6, 1, 10];
    return data;
  }
}
Dynamic-size array example

Explanation

In the code snippet above:

  • Line 3: We create a contract-type dynamicArray.

  • Line 5: We declare a dynamic-size array data of integer type. As discussed earlier, we will not predefine the size of the array inside the [].

  • Line 8: We create a function populate.

  • Line 9: We initialize the data array with some elements.

  • Line 10: We return the data array.

Note: Since the data array is now a dynamic-size array, we can add as many elements as we want.

RELATED TAGS

solidity
arrays
communitycreator

CONTRIBUTOR

Shubham Singh Kshatriya
RELATED COURSES

View all Courses

Keep Exploring