C# 如何基于变量名命名数组
工作地点是:C# 如何基于变量名命名数组,c#,asp.net,arrays,C#,Asp.net,Arrays,工作地点是: foreach (string feature in alpha) { for (int i=0; i < l.Count; i++) { if (l[i] == feature) { string[] ("{0}",feature) = new string[]
foreach (string feature in alpha)
{
for (int i=0; i < l.Count; i++)
{
if (l[i] == feature)
{
string[] ("{0}",feature) = new string[];
}
}
}
foreach(alpha格式的字符串功能)
{
对于(int i=0;i
string[](“{0}”,feature)=新字符串[]代码>不正确。需要做的是,只要条件(l[i]=feature)
匹配,就创建一个新的字符串数组:string[](feature中的任何字符串)=new string[]
可能吗?我想你想要的是词典
var arrays = alpha
.Where(a => l.Contains(a))
.ToDictionary(a => a, a => new List<string>());
var数组=alpha
.其中(a=>l.包含(a))
.ToDictionary(a=>a,a=>new List());
然后访问一个:
List<string> array = arrays["somefeature"];
List array=arrays[“somefeature”];
此外,停止使用数组,几乎没有理由选择它们而不是其他集合类型。我使用了列表
,因为您说要附加到它。您可以使用排序列表,其中键值将是您的功能
var featureList = new SortedList<string, string[]>();
foreach (string feature in alpha)
{
var matchingFeatures = new List<string>();
for (int i = 0; i < l.Length; i++)
{
if (l[i] == feature)
{
matchingFeatures.Add(l[i]);
}
}
featureList.Add(feature, matchingFeatures.ToArray());
}
var featureList=new SortedList();
foreach(alpha格式的字符串特征)
{
var matchingFeatures=新列表();
对于(int i=0;i
不可能这样,请解释为什么要这样做?我们需要更多信息,但您可能需要一个字典,其中关键是功能@weston,因为alpha
是一个数组,对于alpha
中的每个元素,都会枚举一个文本文件,如果找到匹配项,需要创建一个新数组,并且需要将匹配的所有子值插入该数组中。需要对alpha
中的每个元素执行此操作。因此,需要为alpha
中的几乎每个元素创建一个新数组。我想自动化命名数组的过程。可能吗?@KooKiz,谢谢。我假设string
是Dictionary
?@RehanKhan是的。然后您可以像字典[feature]=…
谢谢您那样访问它。如何使用List
创建数据的表格形式,即水平方向和垂直方向?字典是这样的,关键是一个维度,值列表是另一个维度。如果这还不够好,那么你需要问另一个问题。确实是这样。非常感谢所有的指导。