【发布时间】:2020-01-29 21:58:16
【问题描述】:
我正在处理的 C# ASP.net 项目中有一个字符串列表。 列表中的内容如下所示:
Apple,1,monday
Banana,5,monday
Pear,4,tuesday
Apple,2,tuesday,
Banana,7,tuesday
Orange,6,wednesday
Apple,9,thursday,
Banana,2,friday
该列表包含一种水果项目、该特定水果的数量以及需要该水果的日期和数量。 我想要做的是根据水果的类型对列表进行排序,然后从周一到周五,每天的每个数量。 例如,对于水果项目“Apple”,我想要一个看起来像这样的表格条目。
Apple,1,2,0,9,0
对 Apple 项目进行排序,以便显示星期一所需的苹果数量,如果某一天(例如星期三和星期五)没有苹果数量,则显示 0。
我也喜欢同样适用于列表中的所有项目等 o 同样适用于香蕉、梨、橙子或任何其他可能在列表中的水果。
任何帮助将不胜感激。
到目前为止,我得到了下面的代码,这是一种我无法工作的凌乱方法。 原始列表称为“itemsFruitMon”,排序后的列表称为“格式化”。这不是一个好方法,我被困在如何继续下去。
foreach (var item in itemsFruitMon)
{
foreach (var itemComp in itemsFruitMon)
{
if(item.Split(',')[0]==itemComp.Split(',')[0])
{
if (itemComp.Contains("monday"))
{
formatted.Add(item.Split(',')[0] + "," + item.Split(',')[1].Split(',')[0]);
// formatted.Add(item.Split(',')[0]+","+item.Split(',')[1].Split(',')[0]);
}
else
{
formatted.Add(item.Split(',')[0] + "," + 0);
}
}
}
【问题讨论】:
-
我们可以帮助您。您能否与我们分享您迄今为止所做的尝试,并描述您遇到的具体问题?
-
您好,艾米,感谢您的回复。我唯一能用这个列表做的就是得到水果的总数,不管是哪天或水果类型。尝试以我想要的方式对列表进行排序时,我不知所措。我知道我想要什么只是不知道如何得到它。谢谢
-
那么这其中的哪一部分与排序有关,您已经拥有了哪些代码?
-
@cfcorp 我们很乐意为您提供帮助,但我们不太愿意为您为工作。请与我们分享您所拥有的。
-
你考虑过使用类吗?属性可以是 Name(字符串),然后是一堆 int 属性 qtyMon、qtyTue、qtyWed、qtyThu、qtyFri。