Vid*_*dar 23 c# string collections .net-2.0
不知道我是否有"厚厚的一天" - 但我只是想知道这里最好的路线是什么.
语境:
我有一个字段列表,我想用它们存储别名(我使用的是.NET 2.0 BTW),例如
所以它本质上是一对字符串:
参考,参考
社区,社区
邮编:POST_CODE
...而且我认为为这样的事情继续创建对象似乎太过分了,所以我应该创建一个StringDictionary并以这种方式存储值,即使我不使用StringDictionary类的任何功能我并不担心键值对关联等问题 - 我只是想保留一对字符串.
任何帮助/指针都会很棒.
Bli*_*ndy 42
.NET的"pair"泛型类是Tuple
.您会像以下一样使用它:
var strings=new List<Tuple<string, string>>();
strings.Add(Tuple.Create("REFERENCE", "Ref"));
Run Code Online (Sandbox Code Playgroud)
如果最左边的字符串是唯一的(即键),则字典是完全可接受的替代.否则你会得到错误.
至于使用内置集合或创建实际对象是否更好,取决于您的需求(您将在以后添加更多列吗?您不能使用字典方法执行此操作),您使用它的频率(如果它是一个核心类型,你应该为它创建一个域模型)等.
编辑:至于不使用任何字典内置功能,情况并非如此:您正在使用其二进制搜索算法和内部树构造进行快速查看.一个Tuple
或哪个类型的列表很可能不会有这个,它将恢复为线性搜索.
小智 5
在我看来,最好使用自定义结构来存储两个字符串,因为:System.Collections.Generic.Dictionary
并且System.Collections.Specialized.NameValueCollection
需要Add
将字符串添加到其中的方法- 这是额外的代码行。该类System.Tuple
只有 ReadOnly 属性——这可能是一个障碍。
简单结构示例:
public struct DoppelWert
{
public string Wert1;
public string Wert2;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
40569 次 |
最近记录: |