ホームページ  >  記事  >  バックエンド開発  >  C#配列の詳しい説明

C#配列の詳しい説明

黄舟
黄舟オリジナル
2016-12-17 17:33:271271ブラウズ

配列は次のように宣言されるデータ構造です:

type[] arrayName;

配列には次のプロパティがあります:

1. 配列は 1 次元、多次元、またはインターリーブにすることができます。
2. 数値配列要素のデフォルト値はゼロに設定され、参照要素のデフォルト値は null に設定されます。
3. ギザギザ配列は配列の配列であるため、その要素は参照型であり、null に初期化されます。
4. 配列のインデックスは 0 から始まります。n 個の要素を持つ配列のインデックスは 0 から n-1 までです。
5. 配列要素は、配列型を含む任意の型にすることができます。

一次元配列

//声明一维数组,没有初始化,等于null 
  int[] intArray1; 
  //初始化已声明的一维数组 
  intArray1 = new int[3]; //数组元素的默认值为0 
  intArray1 = new int[3]{1,2,3}; 
  intArray1 = new int[]{1,2,3}; 
   
 
  //声明一维数组,同时初始化 
  int[] intArray2 = new int[3]{1,2,3}; 
  int[] intArray3 = new int[]{4,3,2,1}; 
  int[] intArray4 = {1,2,3,4}; 
  string[] strArray1 = new string[]{"One","Two","Three"}; 
  string[] strArray2 = {"This","is","an","string","Array"};

多次元配列

//声明二维数组,没有初始化 
 short[,] sArray1; 
 //初始化已声明的二维数组 
 sArray1 = new short[2,2]; 
 sArray1 = new short[2,2]{{1,1},{2,2}}; 
 sArray1 = new short[,]{{1,2,3},{4,5,6}}; 
  
 //声明二维数组,同时初始化 
 short[,] sArray2 = new short [1,1]{{100}}; 
 short[,] sArray3 = new short [,]{{1,2},{3,4},{5,6}}; 
 short[,] sArray4 = {{1,1,1},{2,2,2}}; 
 //声明三维数组,同时初始化 
 byte[,,] bArray1 = {{{1,2},{3,4}},{{5,6},{7,8}}};

ギザギザ配列

//声明交错数组,没有初始化 
 int[][] JagIntArray1; 
 //初始化已声明的交错数组 
 JagIntArray1 = new int [2][] { 
     new int[]{1,2}, 
     new int[]{3,4,5,6} 
    }; 
 JagIntArray1 = new int [][]{ 
      new int[]{1,2}, 
     // new int []{3,4,5}, 
      intArray2 //使用int[]数组变量 
     }; 
 //声明交错数组,同时初始化 
 int[][] JagIntArray2 = { 
     new int[]{1,1,1}, 
     //new int []{2,2}, 
     intArray1 
     };

配列とは、共通名を使用してグループ化され、割り当てられた添え字を通じてアクセスされる、同じ型の要素のグループです。

配列は同じ型のデータのセットです。配列内のデータにアクセスする場合、添え字を付けて指定できます。 C# の配列要素は任意のデータ型にすることができます。配列の添字は 0 から始まり、最初の要素に対応する添字は 0 であり、その後 1 つずつ増加します。配列は 1 次元または多次元にすることができます。

1次元配列は最も基本的な配列型であり、その宣言方法は次のとおりです:

データ型 [ ] 配列名;

例:
int [ ] anArray ; // 整数型の1次元配列を宣言します。

with two 2 次元の配列は 2 次元配列であり、その宣言方法は次のとおりです。
データ型 [ , ] 配列名
例:

int [ , ] anArray ; // 2 次元の配列を宣言します。整数の次元配列
float [ , ]anArrayOfFloats ; // 浮動小数点型の 2 次元配列を宣言します
string [ , ] anArrayOfStrings; // 文字列型の 2 次元配列を宣言します

配列が作成されておらず、配列内の要素にメモリ空間が割り当てられていないため、配列を宣言した後、配列をインスタンス化する必要があります。

anArray = new int [2,4] ; new starng [2,4] ;

配列要素の初期化に指定された値を使用することもできます。

int [, ] anArray = 新しい int [2, 4] {{1,2,3,4},{5,6,7,8}};

string [, ] anArrayOfStrings = 新しい文字列 [2, 2] ] {{"A","B"}, {"チャンピオン","準優勝"}};

次のショートカットも使用できます:

int [, ] anArray = {{0,1,2 , 3},{1,2,3,4}};

string [, ] anArrayOfStrings = {{"A","B"}, {"優勝","準優勝"}};

C# language 、配列はいくつかの便利な機能を提供しており、これらの機能を使用すると、より高度な機能を実行できます。

配列名.Length: 配列のすべての次元の要素の合計数を表す整数を返します。
配列名.Rank: 配列の次元を表す整数を返します。
配列名.GetLength(int 次元): 配列の指定された次元 (パラメーター次元で指定され、次元は 0 から始まります) の要素の数を表す整数を返します。

4. foreach ステートメントは、配列またはコレクション内の各要素に対して埋め込みステートメントをループで実行します。

foreach ステートメントの構文形式は次のとおりです。
foreach (式内のデータ型識別子)
埋め込みステートメント

//6 つの要素を含む 1 次元の整数配列

int[] mf1=new int[6]; // Pay初期化された配列の範囲に注意するか、初期値を指定します。

//6 つの要素を含む 1 次元の整数配列、初期値は 1, 2, 3, 4, 5, 6

int[] mf2=new int[ 6]{ 1,2,3,4,5,6};

//一次元の文字列配列、初期化子が提供されている場合は、新しい演算子を省略することもできます
string[] mf3={"c", "c++","c#"};

//1 次元のオブジェクト配列

Object[] mf4 = new Object[5] { 26, 27, 28, 29, 30 };

//2 次元の整数配列、初期値 mf5[0,0]=1,mf5[0,1]=2,mf5[1,0]=3,mf5[1,1]=4
int[,] mf5=new int[,] {{ 1,2},{3,4}};

//6*6 2 次元整数配列
int[,] mf6=new mf[6,6];

1 次元を見てみましょうstring Array traversal

using System; 
public class MikeCat 
{ 
static void PrintArray(string[] arr) 
{ 
//打印数组元素,arr.Length 表示数组元素的个数 
for(int i=0;i<arr.Length;i++) 
{ 
Console.WriteLine("arr[{0}]={1}",i,arr[i]); 
} 
} 
public static void Main() 
{ 
string[] arr={"c","c++","c#"}; 
//将数组作为一个参数传递 
PrintArray(arr); 
} 
}

プログラムの結果: arr[0]=c arr[1]=c++ arr[2]=c#

4 行 2 列 (4*2) の整数配列の走査を見てみましょう。

using System; 
public class MikeCat 
{ 
static void PrintArray(int[,] arr) 
{ 
//通过两次FOR循环遍历二维数组 
for(int i=0;i<4;i++)//初始化i作为循环变量,i++实现该变量的自增运算。 
//for循环满足条件后执行完循环体一次后执行i++,然后进入下次循环。简单的c语法,这里做简单介绍供初学者学习。(详细可参阅《c# 高级编程4.0》一书) 
{ 
for(int j=0;j<2;j++) 
{ 
Console.WriteLine("arr[{0},{1}]={2}",i,j,arr[i,j]);//打印每个二维数组元素 
} 
} 
} 
public static void Main() 
{ 
//主函数 
//将数组作为一个参数传递 
PrintArray(new int[,]{{1,2},{3,4},{5,6},{7,8}}; 
} 
}

上記は C# 配列の詳細な説明です。その他の関連記事については、PHP 中国語 Web サイト (www.php.cn) に注目してください。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。