Creating an Array: Difference between revisions
Content added Content deleted
(→[[C++]]: Nice work on this section. Added compiler links.) |
Thundergnat (talk | contribs) (Blanked page since people can't / don't read) |
||
(253 intermediate revisions by 76 users not shown) | |||
Line 1: | Line 1: | ||
{{ |
{{DeprecatedTask}} |
||
'''Please do not add new code, and merge existing code to the [[Arrays]] task.''' |
|||
''This task is about [[numeric arrays]]. For '''hashes''' or '''associative arrays''', please see [[Creating an Associative Array]].'' |
|||
This task is about numerically-indexed arrays. For '''hashes''' or '''associative arrays''', please see [[Creating an Associative Array]]. |
|||
{{Clarify task}} |
|||
In this task, the goal is to create an [[array]]. |
In this task, the goal is to create an [[array]]. Mention if the [[array base]] begins at a number other than zero. |
||
In addition, demonstrate how to initialize an array variable with data. |
|||
==[[mIRC]]== |
|||
'''Interpeter:''' mIRC Script Editor |
|||
'''Libraries:''' [[mArray Snippet]] |
|||
alias creatmearray { .echo -a $array_create(MyArray, 5, 10) } |
|||
==[[Visual Basic .Net]]== |
|||
'''Compiler:''' [[Visual Studio .NET]] 2005 |
|||
Dim myArray as new ArrayList |
|||
Dim myArray2 as new ArrayList = { "Item1", "Item2" } |
|||
==[[BASIC]]== |
|||
'''Interpeter:''' [[QuickBasic]] 4.5, PB 7.1 |
|||
' $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]] |
|||
use vars qw{ @Array }; |
|||
@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/; |
|||
# Alternative: |
|||
my @Array3 = (); |
|||
push @Array3, "Item1"; |
|||
push @Array3, "Item2"; |
|||
$Array3[2] = "Item3"; |
|||
$Array3[3][0] = "Item4"; |
|||
@Array = ('This', 'That', 'And', 'The', 'Other'); |
|||
$ArrayRef = ['This', 'That', 'And', 'The', 'Other']; |
|||
print $ArrayRef->[2]; # would print "And" |
|||
==[[PHP]]== |
|||
For a single dimension array with 10 elements: |
|||
$array = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) //$array[3] == 3 |
|||
$array = array("a", "b", "c", "d", "e", "f", "g", "h", "i", "j") //$array[3] == "c" |
|||
For a multi-dimension array: |
|||
$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]]== |
|||
my_array = Array.new |
|||
# This is the most basic way to create an empty one-dimensional array in 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] |
|||
# or use the .to_a method for Ranges |
|||
array = (0..3).to_a |
|||
#=> [0,1,2,3] |
|||
# This lets us create the above programmatically: |
|||
array = [*0..3].map {|i| [i] * 6} |
|||
# or use the .map (.collect which is the same) method for Ranges directly |
|||
# note also that arrays of length 6 with a default element are created using Array.new |
|||
array = (0..3).map {|i| Array.new(6,i)} |
|||
#=> [[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); |
|||
{{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]; |
|||
Creating an array of Strings: |
|||
String[] s = {"hello" , "World" }; |
|||
==[[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 plus plus|++]]== |
|||
'''Compiler:''' [[GCC]], [[Visual C plus plus|Visual C++]], [[BCC]], [[Watcom]] |
|||
// Dynamic |
|||
const int n = 10; |
|||
int* myArray = new int[n]; |
|||
if(myArray != NULL) |
|||
{ |
|||
myArray[0] = 1; |
|||
myArray[1] = 2; |
|||
delete[] myArray; |
|||
myArray = NULL; |
|||
} |
|||
// 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:''' [[Microsoft Foundation Classes]] |
|||
// MFC |
|||
CArray<int,int> myArray5(10); |
|||
myArray5.Add(1); |
|||
myArray5.Add(2); |
|||
==[[C#]]== |
|||
Example of array of 10 int types: |
|||
int[] numbers = new int[10]; |
|||
Example of array of 3 string types: |
|||
string[] words = { "these", "are", "arrays" }; |
|||
You can also declare the size of the array and initialize the values at the same time: |
|||
int[] more_numbers = new int[3]{ 21, 14 ,63 }; |
|||
For Multi-Deminsional arrays you delcare them the same except for a comma in the type declaration. |
|||
The following creates a 3x2 int matrix |
|||
int[,] number_matrix = new int[3][2]; |
|||
As with the previous examples you can also initialize the values of the array, the only difference being each row in the matrix must be enclosed in its own braces. |
|||
string[,] string_matrix = { {"I","swam"}, {"in","the"}, {"freezing","water"} }; |
|||
or |
|||
string[,] funny_matrix = new string[2][2]{ {"clowns", "are"} , {"not", "funny"} }; |
Latest revision as of 15:07, 29 November 2019
Creating an Array was a programming task. It has been deprecated for reasons that are discussed in its talk page.
Please do not add new code, and merge existing code to the Arrays task.
This task is about numerically-indexed arrays. For hashes or associative arrays, please see Creating an Associative Array.
In this task, the goal is to create an array. Mention if the array base begins at a number other than zero. In addition, demonstrate how to initialize an array variable with data.