【发布时间】:2018-09-25 10:39:16
【问题描述】:
我遇到了一个需求。
我从database 得到两个标志,即lastMonthNumber 和lastMonthName,它们的范围可以是1 to 12 和January to December。
现在我有一个要求,如果lastMonthName="March"和lastMonthNumner=12,那么父list应该如下:
1, April
2, May
3, June
4, July
5, August
6, September
7, October
8, November
9, December
10, January
11, February
12, March
如果lastMonthName="April" 和lastMonthNumber=6,那么列表应该是:
7, November
8, December
9, January
10, February
11, March
12, April
这个lastMonthNumber 的范围可以是1 to 12 和lastMonthName 也可以是Jan to Dec。父 list 需要是动态的。
如果lastMonthNumber=6 和lastMonthName="April",则list 需要有 6 个元素,其中 April 为 12,并且回溯总共有 6 个元素。
父list可以是dictionary,如:
var monthsDictionary=new Dictionary<int, string>();
我正在尝试以下操作,但无法进一步可视化:
var monthsDictionary = new Dictionary<int, string>();
var numbers = new List<int> { 1,2,3,4,5,6,7,8,9,10,11,12};
var months = new List<string> {"January","February","March","April","May","June","July","August","September","October","November","December" };
foreach (var month in months.Select())
{
if (month == lastMonthName)
{
}
}
请帮忙。指针会很有帮助。
【问题讨论】:
-
在 lastMonthName="April" 和 lastMonthNumber=6 的示例中,您如何确定所有需要显示/返回的值?
-
列表需要回溯。如果lastMonthNumber=6,则父列表需要有6个元素,如果lastMonthName=April,则需要从4月开始回溯有6个元素。希望它现在清除。
-
所以你的意思是如果我们可以 lastMonthName = 'Oct' 和 lastMonthNumber = 2,那么结果将是
11 - Sep, 12 - Oct?? -
@DeepakSharma 是的,你是对的。