V programování datový typ String. Řetězec není nic jiného než objekt představující posloupnost hodnot znaků. Řetězce jsou v Javě neměnné. Immutable znamená, že řetězce nelze v jazyce Java upravovat.
Když v Javě vytvoříme pole typu String, zavolá se String Array v Javě.
Abychom mohli použít pole String, musíme jej nejprve deklarovat a inicializovat. Existuje více než jeden způsob, jak to udělat.
Prohlášení:
Pole String může být v programu deklarováno bez velikosti nebo s velikostí. Níže je kód pro totéž -
String[] myString0; // without size String[] myString1=new String[4]; //with size>
Ve výše uvedeném kódu jsme deklarovali jedno pole String (myString0) bez velikosti a další (myString1) o velikosti 4. Oba tyto způsoby můžeme použít pro deklaraci našeho pole String v jazyce Java.
Inicializace:
//first method String[] arr0=new String[]{'Apple','Banana','Orange'}; //second method String[] arr1={'Apple','Banana','Orange'}; //third method String[] arr2=new String[3]; arr2[0]='Apple'; arr2[1]='Banana'; arr2[2]='Orange';> V první metoda , deklarujeme hodnoty na stejném řádku. A druhá metoda je krátká forma první metody a v poslední metoda nejprve vytvoříme pole String s velikostí a poté do něj uložíme data.
Opakování:
K iteraci polem String můžeme použít příkaz opakování.
Jáva
// Java program to demonstrate the various> // methods to iterate over a string array> public> class> GFG {> >public> static> void> main(String[] args)> >{> >String[] arr = {>'Apple'>,>'Banana'>,>'Orange'> };> >// First method> >for> (String i : arr) {> >System.out.print(i +>);> >}> >System.out.println();> >// Second method> >for> (>int> i =>0>; i System.out.print(arr[i] + ' '); } System.out.println(); // Third method int i = 0; while (i System.out.print(arr[i] + ' '); i++; } System.out.println(); } }> |
selenový tutoriál
>
>Výstup
Apple Banana Orange Apple Banana Orange Apple Banana Orange>
Časová složitost: O(N), kde N je délka pole.
Pomocný prostor: O(1)
Obecně tedy máme tři způsoby, jak iterovat pole řetězců. The první metoda je použít pro každou smyčku. The druhá metoda používá jednoduchý cyklus for a třetí způsob je použít smyčku while. Více o iteraci přes pole si můžete přečíst v části Iterace přes pole v Javě
vyhledávání:
K nalezení prvku ze String Array můžeme použít jednoduchý lineární vyhledávací algoritmus. Zde je implementace pro totéž -
nejkrásnější úsměv na světě
Jáva
// Java program to perform the searching> // operation on a string array> public> class> GFG {> >public> static> void> main(String[] args)> >{> >String[] arr = {>'Apple'>,>'Banana'>,>'Orange'> };> >String key =>'Banana'>;> >boolean> flag =>false>;> >for> (>int> i =>0>; i if (arr[i] == key) { System.out.println('Available at index ' + i); flag = true; } } if (flag == false) { System.out.println('Not found'); } } }> |
>
>Výstup
Available at index 1>
Ve výše uvedeném kódu máme pole String, které obsahuje tři prvky Apple, Banana & Orange. Nyní hledáme banán. Banán je přítomen na pozici indexu 1 a to je náš výstup.
řazení:
Řazení pole řetězců znamená seřadit prvky ve vzestupném nebo sestupném lexikografickém pořadí.
Můžeme použít vestavěný seřadit () a můžeme také napsat vlastní třídicí algoritmus od začátku, ale pro jednoduchost tohoto článku používáme vestavěnou metodu.
Jáva
rovná se metodě java
// Java program to perform the sorting> // operation on a string array> import> java.util.Arrays;> class> GFG {> >public> static> void> main(String[] args)> >{> >String[] arr = {>'Apple'>,>'Cat'>,>'Ball'>,> >'Cartoon'>,>'Banana'>,>'Avocado'> };> >// sorting the String array> >Arrays.sort(arr);> >for> (String i : arr) {> >System.out.print(i +>);> >}> >}> }> |
>
>Výstup
Apple Avocado Ball Banana Cartoon Cat>
Zde je naše pole String v netříděném pořadí, takže po operaci řazení je pole seřazeno stejným způsobem, jaký jsme viděli ve slovníku nebo můžeme říci v lexikografickém pořadí.
Pole řetězců na řetězec:
Pro převod z pole String na String můžeme použít metodu toString().
xor cpp
Jáva
// Java program to demonstrate the> // conversion of String array to String> import> java.util.Arrays;> class> GFG {> >public> static> void> main(String[] args)> >{> >String[] arr> >= {>'The'>,>'quick'>,>'brown'>,>'fox'>,>'jumps'>,> >'over'>,>'the'>,>'lazy'>,>'dog'> };> >// converting to string> >String s = Arrays.toString(arr);> >System.out.println(s);> >}> }> |
>
>Výstup
[The, quick, brown, fox, jumps, over, the, lazy, dog]>
Zde je pole String převedeno na řetězec a je uloženo do proměnné typu řetězec, ale jedna věc, kterou je třeba poznamenat, je, že v řetězci jsou také přítomny čárka (,) a závorky. Chcete-li vytvořit řetězec z pole řetězců bez nich, můžeme použít níže uvedený fragment kódu.
Jáva
// Java program to demonstrate the> // conversion of String array to String> public> class> GFG {> >public> static> void> main(String[] args)> >{> >String[] myarr> >= {>'The'>,>'quick'>,>'brown'>,>'fox'>,>'jumps'>,> >'over'>,>'the'>,>'lazy'>,>'dog'> };> >StringBuilder sb =>new> StringBuilder();> >sb.append(myarr[>0>]);> >for> (>int> i =>1>; i sb.append(' ' + myarr[i]); } String s = sb.toString(); System.out.println(s); } }> |
>
>
java objektVýstup
The quick brown fox jumps over the lazy dog>
Ve výše uvedeném kódu máme objekt StringBuilder třída. Připojujeme to pro každý prvek pole řetězců (myarr). Poté ukládáme obsah objektu StringBuilder jako řetězec pomocí metody toString().