Řetězcové pole v C # - Inicializace řetězce řetězců a přiřazení hodnot

Obsah:

Anonim

Úvod do řetězce řetězců v C #

Abychom pochopili String Array v C #, nejprve pochopíme, co je pole a řetězec.

Pole : K souboru stejných typů proměnných uložených postupně a ke každé proměnné lze přistupovat pomocí indexového čísla. Indexování pole začíná nulou.

Například pole pěti celých čísel

String Array: Je to řada řetězců. Jako řetězec jmen jmen zaměstnanců: Řetězec: Pole znaků.

  1. Je pevná
  2. Může být jednoduchá nebo vícenásobná

Syntaxe deklarace

Existují dva způsoby deklarace řetězce řetězců:

1. Prohlášení o velikosti

Pomocí objektu třídy String:

String() variable_name = new String(size);

Pomocí klíčového slova řetězec:

string() variable_name = new string( size );

2. Prohlášení bez velikosti

String() variable_name;

string() variable_name;

Inicializace řetězce řetězců

Pole řetězců lze inicializovat pomocí nového klíčového slova. Nemůžeme inicializovat pole řetězců, aniž bychom určili jeho velikost. Existují dva způsoby inicializace řetězce řetězců.

1. V době prohlášení:

string() variable_name = new string( size );

2. Po prohlášení:

string () variable_name ;

variable_name = new string( size );

Přiřazení hodnot

Hodnoty pole řetězců lze přiřadit při inicializaci nebo pomocí indexového čísla.

Příklad:

string() stringer = new stringArr(3)(“value1”, ”value2”, ”value3”);

NEBO

string() stringArr = new stringArr(3);

stringArr(0) = “value1”;

stringArr(1) = “value2”;

stringArr(2) = “value3”;

Příklady řetězce řetězců v C #

Některé příklady jsou uvedeny níže:

Přístup k prvkům pole pomocí indexového čísla

using System;
public class StringArray
(
public static void Main()
(
// Array Declaration and Initialization
string() stringArr = new string(3) ("value1", "value2", "value3");
// Accessing elements using index
Console.WriteLine(stringArr(0));
Console.WriteLine(stringArr(1));
Console.WriteLine(stringArr(2));
)
)

Výstup :

Přístup k prvkům pole pomocí smyčky

using System;
public class StringArray
(
public static void Main()
(
// Array Declaration and Initialization
string() stringArr= new string(3) ("element1", "element2", "element3");
// Accessing elements using for loop
for(int i=0;i (
Console.WriteLine(stringArr(i));
)
)
)
using System;
public class StringArray
(
public static void Main()
(
// Array Declaration and Initialization
string() stringArr= new string(3) ("element1", "element2", "element3");
// Accessing elements using for loop
for(int i=0;i (
Console.WriteLine(stringArr(i));
)
)
)

Výstup:

  1. Kromě toho můžeme provádět řadu operací na řetězcových polích, jako je vyhledávání, třídění, převod řetězce řetězců na řetězec nebo převod řetězců na řetězec a mnoho dalších. Ukážeme si některé z těchto operací v níže uvedených příkladech:
  2. Hledání v poli řetězců: Existuje mnoho způsobů, jak hledat slovo, nebo můžeme říci řetězec v poli řetězců. Jeden používá metodu Find () třídy Array. Tato metoda vrací první prvek v poli, který odpovídá podmínkám definovaným zadaným predikátem

Příklad :

using System;
public class StringSearch
(
public static void Main()
(
try (
// Creating and initializing string array of flower names
String() flowerArr = new String()("Lily", "Jasmine", "Rose", "Sunflower");
// Print values of the string array
Console.WriteLine("Flower names:");
for (int i = 0; i < flowerArr.Length; i++)
(
Console.WriteLine("(0)", flowerArr(i));
)
Console.WriteLine();
//Search for flower name that starts with 'R'
string result = Array.Find(flowerArr, name => name.StartsWith("R", StringComparison.CurrentCultureIgnoreCase));
//Print result
Console.Write("Flower name starting with 'R': (0)", result);
)
catch (Exception e)
(
Console.Write("(0)", e.Message);
)
)
)

Výstup:

Třídění v řetězci: Můžeme třídit pole řetězců mnoha způsoby. Tady to třídíme pomocí Array.Sort ()

Příklad:

using System;
public class StringSort
(
public static void Main()
(
try
(
// declaring and initializing string array
String() stringArr = new String() ("Cat", "Creature", "Culture", "Cow");
// Sorting in ascending order.
Array.Sort(stringArr);
// reverse array to sort it in descending order
Array.Reverse(stringArr);
// print sorted array
foreach(string val in stringArr)
(
Console.Write(val + " ");
)
)
catch(Exception ex)
(
Console.Write(ex.Message);
)
)
)

Výstup:

Převod řetězce na pole řetězců: Můžeme snadno převést řetězec na pole řetězců a naopak, jak je ukázáno v následujících příkladech:

Příklad:

using System;
public class StringToStringArray ( public static void Main()
(
try
(
string str = "Hello world";
//convert string to string array
string() strArr = new string()( str );
//print string array
foreach(string s in strArr)
(
Console.Write(s);
)
)
catch(Exception ex)
(
Console.Write(ex.Message);
)
)
)

Výstup:

Zobrazený výstup není řetězec, ale pole řetězců. Příklad převodu řetězce řetězců na řetězec:

using System;
public class StringArrayToString ( public static void Main()
(
try(
)
string() strArr = new string(2); strArr(0) = "Good";
strArr(1) = "Morning!";
//converting string array to string
string str = string.Join("", strArr);
//print string
Console.WriteLine(str);
catch(Exception ex)
(
Console.Write(ex.Message);
)
)
)

Výstup:

Pole řetězců a seznam řetězců

Z výše uvedených příkladů můžeme říci, že pole řetězců je velmi podobné seznamu řetězců. Zde jsou však dva hlavní rozdíly:

  1. Nelze změnit velikost řetězce řetězců e. Pokud máte pole řetězců o velikosti čtyři, pak do něj nemůžete přidat pět prvků. Na druhou stranu lze změnit velikost seznamu kdykoli, můžete přidat tolik prvků, kolik chcete do seznamu.
  2. Seznam je pomalejší než pole, takže operace prováděné na poli řetězců budou rychlejší než operace

Můžeme převést řetězec do seznamu, jak je uvedeno níže:

using System;
using System.Collections.Generic;
using System. Linq;
public class StringArrayToList
(
public static void Main()
(
string() strArray = new string()( "string", "array", "to", "list");
//converting string array to list
List list = strArray.ToList();
//print list
foreach (string item in the list)
(
Console.WriteLine(item);
)
)
)

Výstup:

2D řetězcové pole

C # také podporuje vícerozměrné řetězcové pole, nejjednodušší formou vícerozměrného řetězce je 2D řetězcové pole.

Příklad:

using System;
public class TwoDimensionalArray
(
public static void Main()
(
string(, ) strArr = new string(, ) (
("Twenty", "Forty"),
("Thirty", "Fifty")
);
for (int i = 0; i <= strArr.GetUpperBound(0); i++)
(
string s1 = strArr(i, 0); string s2 = strArr(i, 1);
Console.WriteLine("(0), (1)", s1, s2);
)
)
)

Závěr

  1. Řetězcové pole v C # se používá k ukládání více řetězců pod jeden
  2. Dvourozměrné řetězcové pole se používá k reprezentaci jakéhokoli typu matice
  3. Výkon řetězce řetězců je rychlejší než jiné kolekce používané k ukládání
  4. Jsou silně

Doporučené články

Toto je průvodce String Array v C #. Zde diskutujeme zavedení řetězce řetězců v C #, syntaxi deklarace, inicializaci řetězce řetězců a příklady. Další informace naleznete také v dalších navrhovaných článcích -

  1. Fibonacciho série v C #
  2. C # Jagged Arrays
  3. Pole v programování v C
  4. C # Řetězcové funkce
  5. Fibonacciho řada v Javě
  6. Reverzní JavaScript
  7. C Programovací násobení matic
  8. Top 8 Srovnání String vs StringBuilder
  9. Pole v unixu Jak Array funguje v Unixu?