•
ConvertAll()
— этот метод позволяет легко преобразовать каждый элемент списка в новый тип, используя делегаты для гибкости и удобства.•
TrueForAll()
— идеальный способ проверить, соответствуют ли все элементы вашего списка заданному условию, гарантируя, что все они под одной гребенкой.🔥 — если узнал новое
🤝 — если уже пользовался
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17🤝3👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Наткнулся значит я на Zenva. И сразу рассказываю про этот сайт)
— Это замечательный ресурс для всех, кто хочет погрузиться в мир разработки игр. Сайт предлагает множество учебных материалов, включая пошаговые руководства, видеоуроки и примеры кода.
📌 Ссылочка: gamedevacademy.org
➡️ C# Ready | #ресурс
— Это замечательный ресурс для всех, кто хочет погрузиться в мир разработки игр. Сайт предлагает множество учебных материалов, включая пошаговые руководства, видеоуроки и примеры кода.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝24🔥11👍5
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥4🤝2
И сейчас разберемся с делегатами и лямбда-выражениями в сишарпе
Они позволяют передавать методы как параметры и реализовывать функциональный стиль программирования в C#.
1. Делегаты для передачи методов — служат типами для хранения ссылок на методы:
2. Использование лямбда-выражений — они упрощают синтаксис анонимных функций:
3. Передача делегатов в методы — делегаты также могут использоваться для передачи логики в метод:
Функция PerformOperation принимает логику в виде делегата и применяет ее
🔥 Про что ещё хотите увидеть разбор? Делись своим мнением в комментах под постом!
➡️ C# Ready | #техсобес
Они позволяют передавать методы как параметры и реализовывать функциональный стиль программирования в C#.
1. Делегаты для передачи методов — служат типами для хранения ссылок на методы:
delegate int Operation(int a, int b);
Operation add = (x, y) => x + y;
add(3, 4); // вернет 7
2. Использование лямбда-выражений — они упрощают синтаксис анонимных функций:
Func<int, int, int> multiply = (x, y) => x * y;
multiply(3, 4); // вернет 12
3. Передача делегатов в методы — делегаты также могут использоваться для передачи логики в метод:
void PerformOperation(int x, int y, Func<int, int, int> operation) {
Console.WriteLine(operation(x, y));
}
PerformOperation(5, 6, (a, b) => a - b); // выведет -1
Функция PerformOperation принимает логику в виде делегата и применяет ее
🔥 Про что ещё хотите увидеть разбор? Делись своим мнением в комментах под постом!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥4
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15👍4🤝4
Поговорим про изменение коллекции во время итераций без возможных ошибок
В C# есть распространенная ловушка, связанная с изменением коллекций во время их обхода с использованием
Давайте разберемся, как избежать этой ошибки:
Чтобы безопасно изменять коллекцию во время итерации, используйте метод
Еще одно решение — использовать цикл
Жми 🔥 если понравился пост и делись своим мнением в комментариях!
➡️ C# Ready | #практика
В C# есть распространенная ловушка, связанная с изменением коллекций во время их обхода с использованием
foreach
. Эта ошибка может привести к исключению InvalidOperationException
Давайте разберемся, как избежать этой ошибки:
List<int> list = new List<int> { 1, 2, 3 };
foreach (var number in list){
if (number == 2){
list.Remove(number); // Ошибка: InvalidOperationException
}
}
Чтобы безопасно изменять коллекцию во время итерации, используйте метод
RemoveAll
, который позволяет работать с коллекцией без изменения её структуры во время обхода:List<int> list = new List<int> { 1, 2, 3 };
list.RemoveAll(x => x == 2); // Правильный способ
Еще одно решение — использовать цикл
for
вместо foreach
. В этом случае можно контролировать индексы и безопасно изменять коллекцию:List<int> list = new List<int> { 1, 2, 3 };
for (int i = 0; i < list.Count; i++){
if (list[i] == 2){
list.RemoveAt(i); // Удаление элемента по индексу
i--; // Уменьшаем индекс после удаления
}
}
Жми 🔥 если понравился пост и делись своим мнением в комментариях!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥21👍3🤝3
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18🤝2
This media is not supported in your browser
VIEW IN TELEGRAM
Нашел сайтик с различными туториалами от Milan Jovanovic
Он предлагает туториалы по языку C#, что делает его ценным источником информации как для начинающих, так и для опытных разработчиков.
Даю вам ссылочку: milanjovanovic.tech
➡️ C# Ready | #ресурс
Он предлагает туториалы по языку C#, что делает его ценным источником информации как для начинающих, так и для опытных разработчиков.
Даю вам ссылочку: milanjovanovic.tech
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍9🔥3🤝2
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥4🤝2