是否存在与PHP'的C#等价物;s数组\u密钥\u是否存在?
C#是否有PHP函数的等价物 例如,我有以下PHP代码:是否存在与PHP'的C#等价物;s数组\u密钥\u是否存在?,c#,arrays,dynamic-arrays,C#,Arrays,Dynamic Arrays,C#是否有PHP函数的等价物 例如,我有以下PHP代码: $array = array(); $array[5] = 4; $array[7] = 8; if (array_key_exists($array, 2)) echo $array[2]; 我如何将其转换为C#?您可以使用ContainsKey var dictionary = new Dictionary<string, int>() { {"mac", 1000}, {"windows", 5
$array = array();
$array[5] = 4;
$array[7] = 8;
if (array_key_exists($array, 2))
echo $array[2];
我如何将其转换为C#?您可以使用ContainsKey
var dictionary = new Dictionary<string, int>()
{
{"mac", 1000},
{"windows", 500}
};
// Use ContainsKey method.
if (dictionary.ContainsKey("mac") == true)
{
Console.WriteLine(dictionary["mac"]); // <-- Is executed
}
// Use ContainsKey method on another string.
if (dictionary.ContainsKey("acorn"))
{
Console.WriteLine(false); // <-- Not hit
}
var dictionary=newdictionary()
{
{“mac”,1000},
{“窗口”,500}
};
//使用ContainsKey方法。
if(dictionary.ContainsKey(“mac”)==true)
{
Console.WriteLine(dictionary[“mac”]);//C#中的数组具有固定的大小,因此您可以声明一个包含8个整数的数组
int[] array = new int[8];
然后只需检查长度
if(array.Length > 2)
{
Debug.WriteLine( array[2] );
}
对于值类型来说这很好,但是如果您有一个引用类型数组,例如
Person[] array = new Person[8];
然后需要检查null,如中所示
if(array.Length > 2 && array[2] != null)
{
Debug.WriteLine( array[2].ToString() );
}
很抱歉,像PHP这样的动态数组在C#中不受支持
使用System.Collections.Generic;
...
Dictionary dict=新字典();
第5、4条;
第7、8条;
如果(第5条)
{
//[5,int]存在
int-outval=dict[5];
//outval现在包含4个
}
在C#中,当你声明一个新数组时,你必须为它提供一个内存分配的大小。如果你正在创建一个int
数组,值在实例化时预先填充,因此键将始终存在
int[] array = new int[10];
Console.WriteLine(array[0]); //outputs 0.
如果需要动态调整大小的数组,可以使用列表
List<int> array = new List<int>
array.push(0);
if (array.Length > 5)
Console.WriteLine(array[5]);
List数组=新列表
array.push(0);
如果(数组长度>5)
Console.WriteLine(数组[5]);
+1,虽然我认为重要的一点是他/她想要一个字典而不是数组。只要阅读php数组,它是一个有序映射,而不是数组或字典。我不确定C中是否有等价物,除非它是一个SortedDictionary。或者使用字典。这个答案看起来信息最丰富。但由于php可能有不同的不知道数组是什么,字典是一个更好的方法。在数组中你们只有索引,所以你们将有尽可能多的“键”因为数组的大小是。在字典中,您只有添加到其中的键值对。这是一个糟糕的问题-数组在每种语言中的含义不同-从c#的角度来看,php关联数组是一个字典-在c#中,数组没有键,它们只有顺序键index@web_bod系统中字典的donchano.Col选择。通用名称空间??是-但他说“我有一个数组
,我想知道所选键上是否包含值”-数组
没有键
donchno!支持动态数组;它们被称为列表,可以像PHP数组一样被键引用。我知道我回复这条评论已经晚了8年,但我的理解是PHP数组是稀疏的。也就是说,你可以拥有$arr[0]
和$arr[2]
已定义,但$arr[1]
未定义。
List<int> array = new List<int>
array.push(0);
if (array.Length > 5)
Console.WriteLine(array[5]);