#c# #arrays #list
#c# #массивы #Список
Вопрос:
как избежать перезаписи значения при использовании списка?
Вот моя проблема: я хотел сохранить в списке последнее значение, которое я должен использовать для вычисления…. пример, когда вы в первый раз переходите к функции и получаете результирующее значение, сохраните это значение, и в следующий раз, когда вы вернетесь, вы сможете получить доступ к этому значению, а затем принять это значение -текущее значение и равное требуемому значению.
ЗНАЧЕНИЕ [A]
ЗНАЧЕНИЕ [B]
ЗНАЧЕНИЕ [A] — ЗНАЧЕНИЕ [B]= ЗНАЧЕНИЕ [C]
ОДНАКО происходит то, что ЗНАЧЕНИЕ [A] всегда заменяется……
ListOfLastValue.Add(ResponseTimesOfApp);
// Loop through List with foreach
foreach (string LatestResponseTimes in ListOfLastValue)
{
Console.WriteLine(LatestResponseTimes);
}
// Loop through List with for
for (int i = 0; i < ListOfLastValue.Count; i )
{
Console.WriteLine(ListOfLastValue[i]);
}
Комментарии:
1. Пожалуйста, покажите короткую, но полную программу, демонстрирующую проблему.
2. не ясно… как бы вы хотели, чтобы список выглядел после одного вызова функции? два? три? дайте еще немного данных.
3. Я собираюсь сделать дикое предположение и сказать, что объекты в списке изменчивы.
4. я думаю об этом, потому что я создаю новый список List<string> ListOfLastValue = new List<string>(); каждый раз, когда он переходит в этот цикл, но они организуют это через приспособления, и каждый раз, когда он переходит в это приспособление, он рассматривает его как еще один сеанс…. итак, каким-то образом мне нужно создать его в классе или что-то, что вызывается только один раз
5. я верю, что новый экземпляр создан, но пытаюсь выяснить, куда я могу это поместить, чтобы избежать создания каждый раз
Ответ №1:
используйте SortedList mylist = new SortedList()
с помощью sortedlist информация хранится в виде пары ключ-значение.
и легко извлекаемый с помощью ключа в виде строки var = mylist[ключ];