Úvod do polí v C #
Pole je sada objektů. Prvky přítomné v poli jsou stejného typu dat. Může to být int, float, char atd. Koncept Arrays v C # vzniká, aby se vyhnul těžkopádnému ukládání různých hodnot vytvářením různých proměnných.
23 | 56 | 32 | 54 | 1 |
0 | 1 | 2 | 3 | 4 |
Index pole začíná od 0 a index pole se zvýší na základě specifické velikosti pole. Pokud máme pole o délce 5, pole začne od indexu 0 a končí indexem 4. Délka pole tedy definuje počet prvků v tomto poli.
Jak Array funguje v C #?
V C # může být délka pole pevná nebo dynamická. V poli pevné délky lze uložit pevný počet položek. V dynamickém poli se velikost roste s tím, jak nové položky přicházejí do pole, protože přidělování paměti pole je dynamické. V polích ukládá paměť zásobníku proměnnou pole, zatímco spravovaná halda ukládá prvky. V C # je pole odvozeno od systému. Pole třídy. Pokud máme celé číslo, pak všechny prvky mají svou příslušnou hodnotu a jako pole v C # je typ odkazu, budou prvky obsahovat odkaz na skutečné objekty.
Jak vytvořit pole v C #?
Syntaxe pole: data_type () name_of_array
1. Prohlášení o poli
Kód:
class Name
(
static void Main(string()args)
(
Int32() intarray; //array declaration
)
)
Vysvětlení kódu: V deklaraci pole je první částí datový typ, který definuje typ objektů v poli. Druhá část je (), která definuje počet objektů v poli a poté další je název pole, které je v tomto případě int pole
2. Inicializace pole
Kód:
class Name
(
static void Main(string()args)
(
Int32() Intarray; //array declaration
Intarray = new Int32(4); // array initialization
Intarray(0)= 23; // assigning values to the elements
Intarray(1)=5;
Intarray(2)=88;
Intarray(3)=6;
)
)
Vysvětlení kódu: Při inicializaci pole musíme určit počet hodnot v poli pomocí hranatých závorek a přiřadit je každému prvku pole. Tady intarray (0) znamená, že přiřazujeme hodnotu v první poloze, intarray (1) znamená přiřazování hodnot v druhé poloze a tak dále.
3. Zobrazování hodnot pole
Kód:
class Name
(
static void Main(string()args)
(
Int32() Intarray; //array declaration
Intarray = new Int32(4); //array initialization
Intarray(0)= 23; //assigning values to array
Intarray(1)=5;
Intarray(2)=88;
Intarray(3)=6;
Console.WriteLine(Intarray(0));
Console.WriteLine(Intarray(1));
Console.WriteLine(Intarray(2));
Console.WriteLine(Intarray(3));
Console.ReadKey();
)
)
Vysvětlení kódu: Console.WriteLine je metoda zobrazení každé hodnoty pole v konzole.
Příklady polí
Příklady a výsledky v C # jsou uvedeny níže
Příklad č. 1
Kód:
using System;
namespace ArrayDemo
(
class Name
(
static void Main(string() args)
(
Int32() Intarray; // array declaration
Intarray = new Int32(4); // array initialization
Intarray(0) = 23; // assigning values to the array element
Intarray(1) = 5;
Intarray(2) = 88;
Intarray(3) = 6;
Console.WriteLine(Intarray(0));
Console.WriteLine(Intarray(1));
Console.WriteLine(Intarray(2));
Console.WriteLine(Intarray(3));
Console.ReadKey();
)
)
)
Ve výše uvedeném kódu je pole deklarováno a inicializováno pomocí čtyř prvků a Console.WriteLine zobrazí všechny hodnoty.
Výstup:
Příklad č. 2
Kód:
using System;
namespace Demo
(
class Array
(
static void Main(string() args)
(
int() arr = new int(4) ( 10, 20, 30, 40 );
for (int i = 0; i < arr.Length; i++) // Traverse array elements
(
Console.WriteLine(arr(i));
)
)
)
)
Ve výše uvedeném kódu je pole inicializováno a deklarováno se čtyřmi prvky a poté je pro přístup k prvkům pole použito opakování.
Výstup:
Příklad č. 3
Můžeme také použít foreach pro přístup k prvkům pole
Kód:
using System;
namespace Demo
(
class Array
(
static void Main(string() args)
(
int() arr = new int(4) ( 10, 20, 30, 40 );
foreach (int i in arr)
(
Console.WriteLine(i);
)
)
)
)
Výstup:
Typy polí v C #
V C # máme několik typů polí:
- Jednorozměrné pole.
- Vícerozměrné pole.
- Rozeklané pole.
Výše uvedené příklady jsou pole Single Dimension.
Vícerozměrné pole
V pravoúhlých polích nebo vícerozměrných polích jsou data uložena ve formě tabulky
Int(, ) intArray = new int(4, 3)
V tomto jsme určili velikost pole se čtyřmi řádky a třemi sloupci.
1. Deklarace vícerozměrných polí
int(, ) array = new int(3, 3); //declaration of 2D array
int(,, ) array=new int(3, 3, 3); //declaration of 3D array
2. Inicializace vícerozměrného pole
int(, ) array = new int(3, 3); //declaration of 2D array
array(0, 1)=10; //initialization
array(1, 2)=20;
array(2, 0)=30;
Příklad vícerozměrného pole
Kód:
using System;
namespace Demo
(
class Array
(
public static void Main()
(
int(, ) intArray = new int(3, 2)(
(1, 2),
(2, 4),
(4, 8)
);
Console.WriteLine(intArray(0, 0));
Console.WriteLine(intArray(0, 1));
Console.WriteLine(intArray(1, 0));
Console.WriteLine(intArray(1, 1));
Console.WriteLine(intArray(2, 0));
Console.WriteLine(intArray(2, 1));
)
)
)
Vysvětlení kódu: Ve výše uvedeném kódu jsou řádky a sloupce určeny se třemi řádky a čtyřmi sloupci a Console.WriteLine zobrazuje všechny hodnoty.
Výstup:
Jagged Array
Prvky zubatých polí jsou pole, protože přímo ukládá pole.
1. Prohlášení o zubaté sestavě
int()() array = new int(3)();
První závorka hovoří o velikosti a druhá závorka hovoří o rozměrech pole.
2. Inicializace a přiřazení hodnot k zubatým polím
array(0) = new int(4) ( 1, 2, 3, 4 );
array(1) = new int(5) ( 1, 2, 3, 4, 5 );
Velikost prvků se může lišit.
Níže jsou uvedeny příklady zubatého pole:
Příklad č. 1
Kód:
using System;
namespace Demo
(
class Array
(
public static void Main()
(
int()() array = new int(2)();// Declare the array
array(0) = new int() ( 1, 2, 6, 8 );// Initialize the array
array(1) = new int() ( 72, 51, 47, 23, 54, 13 );
// Traverse array elements
for (int i = 0; i < array.Length; i++)
(
for (int j = 0; j < array(i).Length; j++)
(
System.Console.Write(array(i)(j) + " ");
)
System.Console.WriteLine();
)
)
)
)
Výstup:
Příklad č. 2
Kód:
using System;
namespace Demo
(
class Array
(
public static void Main()
(
int()() array = new int(3)()(
new int() ( 51, 22, 43, 87 ),
new int() ( 2, 3, 4, 56, 94, 23 ),
new int() ( 4, 5 )
);
// Traverse array elements
for (int i = 0; i < array.Length; i++)
(
for (int j = 0; j < array(i).Length; j++)
(
System.Console.Write(array(i)(j) + " ");
)
System.Console.WriteLine();
)
)
)
)
Výstup :
Metoda pole v C #
Následující body jsou následující:
- Clear (Array, Int32, Int32) : Tato metoda se používá k nastavení rozsahu prvků na výchozí na základě typu prvku.
- Clone (): Tato metoda se používá k vytvoření kopie prvku.
- Kopírovat (Array, Array, Int32): Tato metoda se používá ke kopírování prvků jednoho pole do jiného pole.
- Rovná se (objekt): Tato metoda v zásadě kontroluje, zda se uvedený objekt rovná současnému objektu.
- Seřadit (Array): Tato metoda se používá k třídění pole.
- CreateInstance (Type, Int32): Tato metoda se používá k vytvoření pole určitého typu, délky a velikosti.
- ToString (): Slouží k zobrazení reprezentace řetězce.
- GetType (): Tato metoda se používá k vrácení typu objektu.
- IndexOf (Array, Object): Tato metoda se používá k prohledávání konkrétního objektu a návratu indexu prvního výskytu v poli 1D.
- Reverse (Array): Tato metoda se používá pro obrácení posloupnosti prvků.
- SetValue (Object, Int32): Tato metoda v poli 1D se používá k nastavení hodnoty prvku.
Příklad
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ArrayMethod
(
class Program
(
static void Main(string() args)
(
int() arr = new int(6) ( 5, 8, 9, 25, 0, 7 );
// Creating an empty array
int() arr2 = new int(6);
Console.WriteLine("length of first array: " + arr.Length); // length of array
Array.Sort(arr); //sorting array elements
Console.Write("Sorted array elements: ");
PrintArray(arr);
Array.Copy(arr, arr2, arr.Length); // copy elements of one array to other
Console.Write("Second array elements: ");
PrintArray(arr2);
Console.WriteLine("Get Index:\t(0)", Array.IndexOf(arr, 9)); // index of value
Array.Reverse(arr);
Console.Write("\nFirst Array elements in reverse order: "); // reverse the elements of array
PrintArray(arr);
Array.Clear(arr, 0, 6); //set default value of elements
PrintArray(arr);
)
static void PrintArray(int() arr)
(
foreach (int i in arr)
(
Console.Write("\t(0)", i);
)
Console.WriteLine("\n");
)
)
)
Vysvětlení kódu: Výše uvedený kód ukazuje několik metod pole, ve kterém arr. Délka se používá k získání délky, která se rovná 6, Array. Seřadit udává hodnoty v seřazené podobě. Pole. Kopírovat zkopíruje hodnoty z prvního pole do druhého pole. Pole. Zadní strana zobrazuje pole v opačném pořadí, zatímco Clear nastavuje výchozí hodnoty prvků.
Výstup:
Závěr
Je tedy lepší deklarovat jednu proměnnou pole namísto deklarace příliš mnoha různých proměnných, protože prvky v paměti jsou ukládány postupně, což zrychluje. Je také snadné procházet, manipulovat a třídit data pomocí polí.
Doporučené články
Toto je průvodce poli v C #. Zde diskutujeme o tom, jak vytvořit pole v c #, typy pole, metody a příklady. Další informace naleznete také v dalších souvisejících článcích.
- C # Příkazy
- C # Funkce
- C # Seznam vs Array
- Pole v C ++
- Vícerozměrné pole v C
- Vícerozměrné pole v Pythonu
- Pole v PHP
- Vícerozměrná pole v C ++ s příklady