Creating an Array

From Rosetta Code
Task
Creating an Array
You are encouraged to solve this task according to the task description, using any language you may know.

In this task, the goal is to create an array.

mIRC

Interpeter: mIRC Script Editor Libraries: mArray Snippet

alias creatmearray { .echo -a $array_create(MyArray, 5, 10) }

Visual Basic 2005.Net

Dim myArray as new ArrayList
Dim myArray2 as new ArrayList = { "Item1", "Item2" }

Quick Basic

Interpeter: QB 4.5 or PB 7.1 Libraries: None are needed

 ' $DYNAMIC
 DIM SHARED myArray(-10 TO 10, 10 TO 30) AS STRING
 REDIM SHARED myArray(20, 20) AS STRING
 myArray(1,1) = "Item1"
 myArray(1,2) = "Item2"

Javascript

 var myArray = new Array();
 var myArray2 = new Array("Item1","Item2");
 var myArray3 = ["Item1", "Item2"];

3DS Max 8 - MaxScript

 myArray = #()
 myArray2 = #("Item1", "Item2")


Python

Interpeter: Python 2.3, 2.4, 2.5 Libraries: None are needed

Array=[
       [0,0,0,0,0,0],
       [1,1,1,1,1,1],
       [2,2,2,2,2,2],
       [3,3,3,3,3,3]
      ]
#You would call the array by this code. This will call the 3rd 1 on the second list
Array[1][3]}

Alternatively you can create it programmatically with a list comprehension:

Array = [ [i]*6 for i in range(4) ]

Create an empty array:

Array = []

Perl

Interpeter: Perl Libraries: None are needed

@Array=(
        [0,0,0,0,0,0],
        [1,1,1,1,1,1],
        [2,2,2,2,2,2],
        [3,3,3,3,3,3]
      );
#You would call the array by this code. This will call the 3rd 1 on the second list
print $Array[1][3];
 # Alternative:
 my @array_using_qw = qw/coffee sugar cream/;

PHP

$array = array(
               array(0, 0, 0, 0, 0, 0),
               array(1, 1, 1, 1, 1, 1),
               array(2, 2, 2, 2, 2, 2),
               array(3, 3, 3, 3, 3, 3)
         );
#You would call the array by this code. This will call the 3rd 1 on the second list
echo $array[1][3];

Ruby

array = [
  [0, 0, 0, 0, 0, 0],
  [1, 1, 1, 1, 1, 1],
  [2, 2, 2, 2, 2, 2],
  [3, 3, 3, 3, 3, 3]
]

# You would call the array by this code. This will call the 3rd 1 on the second list
array[1][3]
# You can also create a sequential array from a range using the 'splat' operator:
array = [*0..3]

#=> [0,1,2,3]

# This lets us create the above programmatically:
array = [*0..3].map {|i| [i] * 6}

#=> [[0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 1, 1], [2, 2, 2, 2, 2, 2], [3, 3, 3, 3, 3, 3]]

Ada

Compiler: GCC 4.1.2

type Arr is array (Positive range <>) of Integer;
Uninitialized : Arr (1 .. 10);
Initialized_1 : Arr (1 .. 20) := (others => 1);
Initialized_2 : Arr := (1 .. 30 => 2);
Const         : constant Arr := (1 .. 10 => 1, 11 .. 20 => 2, 21 | 22 => 3);

Template:Array operation

OCaml

let nbItems = 5 and initialValue = 0 in
   make_vect nbItems initialValue


Java

 For example for an array of 10 int values:
 
 int[] intArray = new int[10];

C

Compiler: GCC, MSVC, BCC, Watcom

Libraries: None are needed

 // Dynamic
 int n = 10 * sizeof(int);
 int *myArray = (int*)malloc(n);
 if(myArray != NULL)
 {
   memset(myArray, 0, n);
   myArray[0] = 1;
   myArray[1] = 2;
   free(myArray);
   myArray = NULL;
 }

Libraries: None are needed

 // Static
 int myArray2[10] = { 1, 2, 0}; /* 3..9 := 0 */

C++

Compiler: GCC, MSVC, BCC, Watcom

Libraries: None are needed

 // Dynamic
 const int n = 10;
 int* myArray = new int[n];
 if(myArray != NULL)
 {
   myArray[0] = 1;
   myArray[1] = 2;
   delete[] myArray;
   myArray = NULL;
 }

Libraries: None are needed

 // Static
 int myArray2[10] = { 1, 2, 0}; /* 3..9 := 0 */

Libraries: STL

 // STL
 std::vector<int> myArray3(10);
 myArray3.push_back(1);
 myArray3.push_back(2);

Libraries: Qt

 // Qt
 QVector<int> myArray4(10);
 myArray4.push_back(1);
 myArray4.push_back(2);

Libraries: MFC

 // MFC
 CArray<int,int> myArray5(10);
 myArray5.Add(1);
 myArray5.Add(2);