Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 两类数组_C#_Java_Arrays - Fatal编程技术网

C# 两类数组

C# 两类数组,c#,java,arrays,C#,Java,Arrays,嗨,我正在做一个学校作业,我需要把这个JAVA代码转换成C# private Map descriptions=new HashMap(); 可以直接转换吗 我已经决定将ItemID转换为int,ProductDescription是一个类。是的,只需将HashMap替换为。您可能希望将变量键入为(与Java代码的精神相同),但这并不是严格必需的。是的,只需将HashMap替换为。您可能希望将变量键入为(与Java代码的精神相同),但这并不是严格必需的。您可以使用字典 表示键和值的集合。密钥

嗨,我正在做一个学校作业,我需要把这个JAVA代码转换成C#

private Map descriptions=new HashMap();
可以直接转换吗


我已经决定将ItemID转换为int,ProductDescription是一个类。

是的,只需将
HashMap
替换为。您可能希望将变量键入为(与Java代码的精神相同),但这并不是严格必需的。

是的,只需将
HashMap
替换为。您可能希望将变量键入为(与Java代码的精神相同),但这并不是严格必需的。

您可以使用
字典


表示键和值的集合。密钥必须是唯一的。

您可以使用
字典


表示键和值的集合。密钥必须是唯一的。

是的,您可以使用字典而不是HashMap进行转换。当然,了解每个代码段并进行转换更有效。不建议逐行转换,因为您可能会错过更好的解决问题的方法。

是的,您可以使用字典而不是HashMap进行转换。当然,了解每个代码段并进行转换更有效。不建议逐行转换,因为您可能会错过更好的解决问题的方法。

private Dictionary descriptions=new Dictionary();
private Dictionary<ItemID, ProductDescription> descriptions = new Dictionary<ItemID, ProductDescription>();
hasmap确实允许一个空键条目。在(罕见的?)情况下,您需要这个,我只需创建一个特殊的ItemID,并将其用于null键

当然,您可以使用空键支持创建字典子代,但这样做太过分了(imho;-)

private Dictionary descriptions=new Dictionary();
hasmap确实允许一个空键条目。在(罕见的?)情况下,您需要这个,我只需创建一个特殊的ItemID,并将其用于null键


当然,您可以使用空键支持创建字典子代,但这样做太过分了(imho;-)

这是一个很好的匹配,但是

private IDictionary<ItemID, ProductDescription> descriptions
    = new Dictionary<ItemID, ProductDescription>();
专用IDictionary描述
=新字典();

注意

将接受
null
键值,其中as不接受


如果您真的想支持
null
键值,我希望看到您在尝试完美的.Net
HashMap
实现之前进行推理。

这是一个很好的匹配,但是

private IDictionary<ItemID, ProductDescription> descriptions
    = new Dictionary<ItemID, ProductDescription>();
专用IDictionary描述
=新字典();

注意

将接受
null
键值,其中as不接受


如果您真的想支持
null
键值,我希望看到您在尝试完美的.Net
HashMap
实现之前进行推理。

有很多选择

有一个

在C中#

所以它可以是
List


//首选

有很多选择

有一个

在C中#

所以它可以是
List

//首选

是的,当然可以。 请看以下例子:

IDictionary<int, string> h = new Dictionary<int, string>();
            h.Add(1, "a");
            h.Add(2, "b");
            h.Add(3, "c");

SortedList<int, string> s = new SortedList<int, string>();
            s.Add(1, "a");
            s.Add(2, "b");
IDictionary h=new Dictionary();
h、 添加(1,“a”);
h、 添加(2,“b”);
h、 添加(3,“c”);
SortedList s=新的SortedList();
s、 添加(1,“a”);
s、 添加(2,“b”);
我想这就是你要找的。

是的,当然可以。 请看以下例子:

IDictionary<int, string> h = new Dictionary<int, string>();
            h.Add(1, "a");
            h.Add(2, "b");
            h.Add(3, "c");

SortedList<int, string> s = new SortedList<int, string>();
            s.Add(1, "a");
            s.Add(2, "b");
IDictionary h=new Dictionary();
h、 添加(1,“a”);
h、 添加(2,“b”);
h、 添加(3,“c”);
SortedList s=新的SortedList();
s、 添加(1,“a”);
s、 添加(2,“b”);

我想这就是您要寻找的。

如果ItemID是一个类,为什么要将其转换为int?你能?它是一个包含一个int字段的类吗?那么为什么代码不读取
map您需要支持
null
键吗?如果ItemID是一个类,为什么要将其转换为int?你能?它是一个包含一个int字段的类吗?那么为什么代码不读取
Map您需要支持
null
键吗?它很接近,但不完全相同:允许
null
值和
null
键。@Paolo Dictionary也允许null值。只有一个空键条目不支持编辑的关闭,但不完全相同:允许
null
值和
null
键。@Paolo字典也允许空值。仅一个空密钥项不受支持