0

我将列出一些数组并询问如何在 C# 中执行它们。

$myArray = array();

在 PHP 中,我不必为数组声明内存大小。如果我不知道需要我的阵列怎么办?

$myArray = array("Name" => "Steve");

我如何在 C# 中执行上述操作?

$myArray = array();
$myArray['Names'][0] = "Steve";
$myArray['Names'][1] = "Jim";

以上如何在 C# 中工作”?

4

2 回答 2

3
$myArray = array("Name" => "Steve");

这是一张地图。PHP 不需要你知道,但 C# 需要。您可以将其实现为:

var myArray = new Dictionary<String, String>();

对于您的第二种情况

$myArray['Names'][0] = "Steve";

这是一个字典,其中键是字符串,但值是String[]. 在 C# 中:

var myArray = new Dictionary<String, List<String>>();
于 2013-09-12T00:28:05.587 回答
2

PHP 中的数组最类似于地图或C# Dictionary. PHP 中的数组实际上就是所谓的associative array. 因此,对于您的 C# 等价代码之上的代码是:

        Dictionary<string, string> items= new Dictionary<string, string>();  
        items.Add("Name", "Steve");  

如果您希望一个键指向多个值:

        Dictionary<string, ICollection<string>> items= new  
                           Dictionary<string, ICollection<String>>();    
        ICollection<string> names = new List<string>();  
        names.Add("Steve");     
        items.Add("Name", names);
于 2013-09-12T00:29:48.603 回答