Samouczek dotyczący tablicy C#: tworzenie, deklarowanie, inicjowanie
⚡ Inteligentne podsumowanie
Tablice C# przechowują zbiór elementów o stałym rozmiarze, które mają ten sam typ danych pod jedną nazwą zmiennej. Każdy element ma indeks liczony od zera, dzięki czemu deklarowanie, inicjowanie i uzyskiwanie dostępu do wartości jest szybkie i przewidywalne.

Co to są tablice w języku C#?
Tablica służy do przechowywania kolekcji lub serii elementów. Elementy te będą tego samego typu.
Na przykład, jeśli masz tablicę wartości całkowitych, tablica może być zbiorem wartości takich jak [1, 2, 3, 4]. Tutaj liczba elementów tablicy wynosi 4.
Tablice są przydatne, gdy chcesz przechowywać kolekcję wartości tego samego typu. Zamiast więc deklarować a zmienna dla każdego elementu możesz po prostu zadeklarować jedną zmienną.
Zmienna ta będzie wskazywała tablicę lub listę elementów, które będą odpowiedzialne za przechowywanie elementów tablicy.
Przyjrzyjmy się, jak możemy pracować z tablicami w języku C#. W naszym przykładzie zadeklarujemy tablicę liczb całkowitych i odpowiednio z nimi będziemy pracować.
Należy zauważyć, że cały poniższy kod jest zapisywany w pliku Program.cs.
Krok 1) Deklarowanie tablicy – Pierwszym krokiem jest zadeklarowanie tablicy. Zobaczmy, jak możemy to osiągnąć na poniższym przykładzie kodu.
Code Wyjaśnienie:-
- Pierwsza część to typ danych. Określa typ elementów używanych w tablicy. Zatem w naszym przypadku tworzymy tablicę liczb całkowitych.
- Druga część [ ], która określa rangę tablicy. (Ranga jest symbolem zastępczym, który określa liczbę elementów, które będzie zawierać tablica)
- Następna jest nazwa tablicy, która w naszym przypadku to „wartości”. Zauważ, że widzisz zielone, faliste podkreślenie, nie przejmuj się tym. To po prostu .Net mówiący, że zadeklarowałeś tablicę, ale nigdzie jej nie używasz.
Krok 2) Następnym krokiem jest inicjalizacja tablicy. Tutaj określimy liczbę wartości, które tablica będzie przechowywać. Zamierzamy także przypisać wartości do każdego elementu tablicy.
Code Wyjaśnienie:-
- Najpierw ustalamy liczbę elementów, które będzie zawierać tablica, na 3. Tak więc w nawiasach kwadratowych mówimy, że tablica będzie zawierać 3 elementy.
- Następnie przypisujemy wartości każdemu elementowi tablicy. Możemy to zrobić, określając nazwę zmiennej + pozycję indeksu w tablicy. Zatem values[0] oznacza, że przechowujemy wartość na pierwszej pozycji tablicy. Podobnie, aby uzyskać dostęp do drugiej pozycji, używamy notacji values[1] i tak dalej.
Note: – W Arrays pozycja indeksu zaczyna się od 0.
Krok 3) Wyświetlmy teraz poszczególne elementy tablicy w konsoli. Aby to osiągnąć, dodajmy poniższy kod.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Int32[] value; value=new Int32[3]; value[0]=1; value[1]=2; value[2]=3; Console.WriteLine(value[0]); Console.WriteLine(value[1]); Console.WriteLine(value[2]); Console.ReadKey(); } } }
Code Wyjaśnienie:-
To jest prosta część, w której po prostu używamy metody Console.WriteLine, aby wysłać każdą wartość elementu do konsoli.
Zauważ, że ponownie uzyskujemy dostęp do każdego elementu za pomocą nazwy zmiennej tablicowej wraz z pozycją indeksu.
Jeżeli powyższy kod zostanie wpisany poprawnie i program zostanie uruchomiony, wyświetlony zostanie następujący komunikat.
Wyjście:
Na podstawie wyników można zobaczyć wszystkie wartości tablicy wyświetlane w konsoli.
Jak przejść przez tablicę C# za pomocą instrukcji foreach
Odczyt każdego elementu według indeksu działa, ale staje się żmudny, gdy tablica zawiera wiele wartości. Pętla foreach oferuje czystszy sposób przeglądania każdego elementu tablicy w kolejności bez… tracsamodzielnie utwórz zmienną indeksową.
Instrukcja foreach pobiera każdy element z tablicy pojedynczo i kopiuje go do zmiennej pętli. Następnie używa się tej zmiennej w ciele pętli. Ponieważ pętla zatrzymuje się automatycznie na ostatnim elemencie, instrukcja foreach eliminuje ryzyko odczytu poza koniec tablicy.
using System; namespace DemoApplication { class Program { static void Main(string[] args) { Int32[] values = new Int32[3] {1, 2, 3}; foreach (Int32 item in values) { Console.WriteLine(item); } Console.ReadKey(); } } }
Powyższy przykład deklaruje i inicjuje tablicę trzech liczb całkowitych, a następnie przechodzi przez nią za pomocą foreach. W każdym przejściu zmienna pozycja Otrzymuje kolejną wartość, a Console.WriteLine ją drukuje. Na wyjściu pojawiają się liczby 1, 2 i 3 w osobnych wierszach.
Kluczowe punkty, które należy zapamiętać, stosując instrukcję foreach z tablicami:
- Zmienna pętli jest przeznaczona tylko do odczytu, dlatego foreach jest najlepszym rozwiązaniem do odczytywania wartości, a nie do ich zmiany w miejscu.
- Aby modyfikować elementy podczas wyszukiwaniaping, zamiast tego użyj pętli for z indeksem.
- foreach działa z tablicami jednowymiarowymi, tablicami wielowymiarowymi i dowolnymi kolekcjami obsługującymi iterację.
Tablice wielowymiarowe w C#
Przedstawione dotychczas tablice są jednowymiarowe, co oznacza, że przechowują prostą listę wartości. Język C# obsługuje również tablice wielowymiarowe, które układają elementy w siatce wierszy i kolumn. Tablica dwuwymiarowa jest najpopularniejszą formą i nadaje się do przechowywania danych takich jak macierze, plansze do gier i tabele.
Deklarację dwuwymiarowej tablicy uzyskuje się, umieszczając przecinek w nawiasach kwadratowych. Każdy dodatkowy przecinek dodaje kolejny wymiar, więc int[,] jest dwuwymiarowe, a int[,,] trójwymiarowe. Elementy są następnie osiągane z jednym indeksem na wymiar.
using System; namespace DemoApplication { class Program { static void Main(string[] args) { int[,] matrix = new int[2, 2] { {1, 2}, {3, 4} }; Console.WriteLine(matrix[0, 0]); Console.WriteLine(matrix[1, 1]); Console.ReadKey(); } } }
Tutaj macierz tablicy zawiera dwa wiersze i dwie kolumny. Element matrix[0, 0] zwraca wartość 1, a matrix[1, 1] zwraca wartość 4. Liczba wymiarów jest ustalona podczas deklarowania tablicy, a rozmiar każdego wymiaru jest ustawiany podczas tworzenia tablicy.
Tablice poszarpane w C#
Tablica poszarpana to tablica, której elementy same w sobie są tablicami. W przeciwieństwie do prostokątnej tablicy wielowymiarowej, każda wewnętrzna tablica może mieć inną długość, dlatego tablicę poszarpaną często nazywa się tablicą tablic. Ta elastyczność jest przydatna, gdy wiersze naturalnie zawierają różną liczbę wartości.
Deklarujesz tablicę nieregularną z dwoma zestawami nawiasów kwadratowych, a następnie tworzysz każdą tablicę wewnętrzną osobno. Poniższy przykład tworzy tablicę nieregularną, w której pierwszy wiersz zawiera trzy wartości, a drugi dwie.
using System; namespace DemoApplication { class Program { static void Main(string[] args) { int[][] jagged = new int[2][]; jagged[0] = new int[] {1, 2, 3}; jagged[1] = new int[] {4, 5}; Console.WriteLine(jagged[0][2]); Console.WriteLine(jagged[1][1]); Console.ReadKey(); } } }
Wyrażenie jagged[0][2] odczytuje trzeci element pierwszego wiersza, czyli 3, a jagged[1][1] odczytuje drugi element drugiego wiersza, czyli 5. Ponieważ każdy wiersz jest osobną tablicą, tablice jagged efektywnie wykorzystują pamięć, gdy długości wierszy się różnią, choć potrzebują dodatkowego kroku, aby zainicjować każdą wewnętrzną tablicę.




