Csharp/CSharp Tutorial/Data Structure/Array
Содержание
- 1 A one-dimensional array.
- 2 Array Declaration with initialization
- 3 Array Inherited Members: get array type
- 4 Array Inherited Members: GetLength(0)
- 5 Array Inherited Members: Rank and Length
- 6 Declare the array and instantiate the array
- 7 Declaring and Accessing an Array
- 8 Initializing Anonymous Type Arrays
- 9 Methods Defined by Array
- 10 System.Array is a base class for all arrays in C#
- 11 Use for each loop to output elements in an array
A one-dimensional array.
An array is a collection of variables of the same type that are referred to by a common name.
To declare a one-dimensional array, you will use this general form:
type[ ] array-name = new type[size];
Array Declaration with initialization
The general form for initializing a one-dimensional array is shown here:
type[ ] array-name = { val1, val2, val3, ..., valN };
Array Inherited Members: get array type
using System;
class MainClass
{
static void Main()
{
int[] arr = new int[] { 15, 20, 5, 25, 10 };
Console.WriteLine("GetType() = {0}", arr.GetType());
}
}
GetType() = System.Int32[]
Array Inherited Members: GetLength(0)
using System;
class MainClass
{
static void Main()
{
int[] arr = new int[] { 15, 20, 5, 25, 10 };
Console.WriteLine("GetLength(0) = {0}", arr.GetLength(0));
}
}
GetLength(0) = 5
Array Inherited Members: Rank and Length
using System;
class MainClass
{
static void Main()
{
int[] arr = new int[] { 15, 20, 5, 25, 10 };
Console.WriteLine("Rank = {0}, Length = {1}", arr.Rank, arr.Length);
}
}
Rank = 1, Length = 5
Declare the array and instantiate the array
using System;
class MainClass
{
static void Main()
{
int[] myIntArray;
myIntArray = new int[4];
for (int i = 0; i < 4; i++)
myIntArray[i] = i * 10;
for (int i = 0; i < 4; i++)
Console.WriteLine(i);
}
}
0 1 2 3
Declaring and Accessing an Array
class MainClass
{
static void Main()
{
string[] languages = new string[9]{"C#", "COBOL", "Java","C++", "Visual Basic", "Pascal"};
// Retrieve 5th item in languages array (Visual Basic)
string language = languages[4];
}
}
Initializing Anonymous Type Arrays
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
var worldCup2006Finalists = new[]{new
{
TeamName = "France",
Players = new string[]
{
"A", "B","C", "D",
}
},
new
{
TeamName = "Italy",
Players = new string[]
{
"Q", "W","E", "R",
}
}
};
Print(worldCup2006Finalists);
}
private static void Print<T>(IEnumerable<T> items)
{
foreach (T item in items)
{
Console.WriteLine(item);
}
}
}
Methods Defined by Array
public static int BinarySearch(Array a, object v)
System.Array is a base class for all arrays in C#
Properties Defined by Array
Property Meaning public virtual bool IsFixedSize Is the array fixed size or dynamic.(read-only property) public virtual bool IsReadOnly Is the array read-only. (read-only property). public virtual bool IsSynchronized Is the array safe for use in a multithreaded environment. (read-only property) public int Length The number of elements in the array. (read-only property) public int Rank The dimensions in the array. (read-only property) public virtual object SyncRoot A read-only property that contains the object that must be used to synchronize access to the array.
Use for each loop to output elements in an array
using System;
class MainClass
{
public static void Main()
{
string s = "A B C D E";
char[] separators = {" "};
string[] words = s.Split(separators);
foreach (object obj in words)
Console.WriteLine("Word: {0}", obj);
}
}
Word: A Word: B Word: C Word: D Word: E