Изменение свойства объекста в списке объектов - C#

Узнай цену своей работы

Формулировка задачи:

Есть класс:
class MyClass
{
    public int Id { get; set; }
    public int Price { get; set; }
 
    public MyClass(int _id, int _price)
    {
        Id = _id;
        Price = _price;
    }
    //...
}
Есть список объектов этого класса:
List<MyClass> mc = new List<MyClass>();
mc.Add(new MyClass(1, 56));
mc.Add(new MyClass(2, 74));
mc.Add(new MyClass(3, 43));
Задача: Найти объект со свойством Id = 2, и изменить его свойство Price с 74 на 65. Реализовал вот так:
for (int i = 0; i < mc.Count(); i++)
    if (mc[i].Id == 2) mc[i].Price = 65;
Вопрос: есть ли более интересный способ решить данную задачу, что-бы меньше места занимало? Вот весь пример:
    class Program
    {
        static void Main(string[] args)
        {
            List<MyClass> mc = new List<MyClass>();
            mc.Add(new MyClass(1, 56));
            mc.Add(new MyClass(2, 74));
            mc.Add(new MyClass(3, 43));
            
            //Изменить свойство Price объекста с Id=2
            for (int i = 0; i < mc.Count(); i++)
                if (mc[i].Id == 2) mc[i].Price = 65;
        }
    }
 
    class MyClass
    {
        public int Id { get; set; }
        public int Price { get; set; }
 
        public MyClass(int _id, int _price)
        {
            Id = _id;
            Price = _price;
        }
        public MyClass() { }
    }

Решение задачи: «Изменение свойства объекста в списке объектов»

textual
Листинг программы
mc.Find(x =>( x.Id == 2)&&(x.Price==74)).Price = 65;

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.222 из 5
Похожие ответы