배열은 다음과 같이 선언되는 데이터 구조입니다.
type[] arrayName;
배열에는 다음과 같은 속성이 있습니다.
1. 배열은 다음과 같은 속성을 갖습니다. 1차원, 다차원 또는 인터리브형이어야 합니다.
2. 숫자형 배열 요소의 기본값은 0으로 설정되고, 참조 요소의 기본값은 null로 설정됩니다.
3. 들쭉날쭉한 배열은 배열의 배열이므로 해당 요소는 참조 유형이며 null로 초기화됩니다.
4. 배열의 인덱스는 0부터 시작합니다. n 요소가 있는 배열의 인덱스는 0부터 n-1까지입니다.
5. 배열 요소는 배열 유형을 포함하여 모든 유형이 될 수 있습니다.
1차원 배열
//声明一维数组,没有初始化,等于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차원 배열은 가장 기본적인 배열 유형입니다.
데이터 유형 [ ] 배열 이름
예:
int [ ] anArray; //1차원 정수 배열 선언
2차원 배열은 2차원 배열입니다.
데이터 유형 [ , ] 배열 이름
예:
int [ , ] anArray ; // 정수의 2차원 배열 선언
float [ , ]anArrayOfFloats; // 부동 소수점의 2차원 배열 선언
string [ , ] anArrayOfStrings; / / 문자열 유형의 2차원 배열 선언
배열 변수를 선언할 때 배열이 아직 생성되지 않았으며 배열의 요소에 대해 메모리 공간이 할당되지 않았습니다. 따라서 배열을 선언한 후 배열을 인스턴스화해야 합니다.
anArray = new int [2,4] ;
anArrayOfStrings = new Stirng [2,4] ;
우리는 주어진 값으로 배열 요소를 초기화할 수도 있습니다.
int [, ] anArray = 새로운 int [2, 4] {{1,2,3,4},{5,6,7,8}};
string [, ] anArrayOfStrings = 새 문자열 [2, 2] {{"A","B"}, {"champion","runner-up"}};
다음 단축키도 사용할 수 있습니다:
int [, ] anArray = {{0,1,2,3},{1,2,3,4}};
string [, ] anArrayOfStrings = {{"A","B"}, { "챔피언", "준우승" }};
C# 언어에서 배열은 몇 가지 유용한 기능을 제공합니다. 이러한 기능을 사용하면 몇 가지 고급 기능을 완성할 수 있습니다.
배열 이름.길이: 배열의 모든 차원에 있는 총 요소 수를 나타내는 정수를 반환합니다.
Array name.Rank: 배열의 차원을 나타내는 정수를 반환합니다.
배열 이름.GetLength(int 차원): 배열의 지정된 차원(매개변수 차원으로 지정, 차원은 0부터 시작)에 있는 요소 수를 나타내는 정수를 반환합니다.
4. foreach 문은 배열 또는 컬렉션의 각 요소에 대해 루프에 포함된 문을 실행합니다.
foreach 문의 구문 형식은 다음과 같습니다.
foreach(표현식의 데이터 유형 식별자)
포함된 문
//6개 요소를 포함하는 1차원 정수 배열
int [ ] mf1=new int[6]; //초기화 배열의 범위에 주의하거나 초기값을 지정하세요.
//6개 요소를 포함하는 1차원 정수 배열, 초기값 1, 2, 3, 4 , 5, 6
int[] mf2=new int[6]{1,2,3,4,5,6};
//1차원 문자열 배열인 경우 초기값이 제공되는 설정 항목인 경우 new 연산자
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의 순회를 살펴보겠습니다. -차원 문자열 배열
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 중국어 홈페이지(www.php.cn)를 참고해주세요. !