![](https://dev-hobby.pl/wordpress/wp-content/uploads/2020/09/Extension-methods-373x280.jpg)
Extension methods wywołania łańcuchowe
Gdy metoda rozszerzenia zwraca wartość, która ma ten sam typ, co jej argument, może być użyta do „połączenia” jednego lub więcej wywołań metod z kompatybilną sygnaturą.
4. Zaawansowane struktury danych i manipulacje
Gdy metoda rozszerzenia zwraca wartość, która ma ten sam typ, co jej argument, może być użyta do „połączenia” jednego lub więcej wywołań metod z kompatybilną sygnaturą.
Metody rozszerzające zostały wprowadzone w C # 3.0. Metody rozszerzające rozszerzają i dodają zachowanie do istniejących już typów bez tworzenia nowego typu pochodnego, rekompilacji lub innej modyfikacji oryginalnego typu.
W sytuacjach, w których konieczne jest dokonanie wielokrotnych modyfikacji ciągu znaków, potrzebujemy klasy StringBuilder.
Łańcuchy , a więc ciągi znaków w języku C#, są typu string. Ciągi znaków są przechowywane jako sekwencyjne, tylko do odczytu kolekcje obiektów typu char w standardzie Unicode.
Chcemy posłużyć się zawartością obiektu typu String, ale chcemy uniknąć jego nadmiarowości przy jego automatycznym tworzeniu z powodu niezmienności takich obiektów.
W języku C# SortedSet to kolekcja obiektów w kolejności posortowanej. Należy do kolekcji typów ogólnych i jest zdefiniowana w przestrzeni nazw System.Collections.Generic.
Stos to struktura danych typu LIFO (Last In, First Out), co oznacza, że pierwszy element dodany do stosu jest ostatnim, który zostanie z niego usunięty. Stosy są powszechnie używane w informatyce do różnych celów, takich jak cofanie operacji, wyrażenia arytmetyczne i wywoływanie funkcji.
Podstawowe operacje wykonywane na kolejce to Enqueue i Dequeue. Dane są dodawane do kolejki za pomocą metody Enqueue. Dane są usuwane z kolejki za pomocą metody Dequeue. Można zajrzeć do elementu, który wyjdzie z kolejki i służy do tego metoda Peek.