2012-07-04 72 views
5

Tôi tự hỏi sự khác biệt giữa hai cách để xác định Mảng đa chiều trong C#.Sự khác nhau giữa các ký hiệu Mảng đa chiều (đối tượng [] [] và đối tượng [,])

Bạn có thể sử dụng object[][]object[,] để hoạt động với mảng đa chiều.

Có sự khác biệt về chức năng không?

+0

http://stackoverflow.com/questions/597720/what-is-differences-between-multidimensional-array-and-array-of-arrays-in -c – Jodrell

+1

Có thể trùng lặp _exactly_: http://stackoverflow.com/q/597720 – mmdemirbas

+0

@Jodrell Nhận xét của tôi cũng trùng lặp một cách mỉa mai :) – mmdemirbas

Trả lời

6

object[][] là ký hiệu cho mảng mảng. Mẫu thứ hai object[,] là mảng hai chiều.

Sự khác biệt chính là khi người đầu tiên có thể chứa các mảng "bên trong" chiều dài khác nhau, thứ hai phải là hình chữ nhật (ví dụ: 4x7).

Ví dụ:

int[][] a = new int[] { new int[]{ 1, 2 }, new int[]{ 3, 4, 5, 6, 7 }}; 
int[,] b = new int[,] { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } }; 

This is an official tutorial.

+0

Quảng trường bạn có nghĩa là gì? –

+1

@MAfifi Không, hình chữ nhật. Có thể có 16 x 9 ví dụ bằng cách sử dụng 'object [,]' –

+0

Mã định dạng như mã sẽ đẹp. – mmdemirbas

Các vấn đề liên quan