У меня есть словарь
скажем
Dictionary<DateTime, double> MyData
Теперь я хочу получить значение из словаря.
Но в случае, если ключ не существует, мне нужно взятьближайшее значение.
Позволяет вызвать функцию
double GetMyData(Dictionary<DateTime, double> MyData, DateTime Date)
{
if(MyData.ContainsKey(Date)
{
return MyData[Date];
}
else
{
//return the nearest available value.
// if Date is '2018-01-01', then try to look for next date,
// It can be '2018-01-02' or even '2017-12-31'
// Here aim is to get the nearest available value.
}
}
РЕДАКТИРОВАТЬ:
Пример данных:
MyData['2018-01-01'] = 420.0;
MyData['2018-02-01'] = 220.0;
MyData['2018-03-01'] = 320.0;
MyData['2018-05-01'] = 210.0;
MyData['2018-06-01'] = 220.0;
MyData['2018-07-01'] = 230.0;
MyData['2018-08-01'] = 240.0;
Здесь ключ '2018-04-01 'недоступен,
Так что мне нужно любой ближайшего доступного значения.
Это может быть значение либо «2018-03-01», либо «2018-05-01»
Теперь я надеюсь, что он очищен.
И, пожалуйста, не обижайся, английский не мой родной язык.