Java String: Práca s reťazcami, metódy a príklady

Java String patrí medzi najpoužívanejšie dátové typy v celom jazyku Java. Stretneš sa s ním pri práci so súbormi, API komunikáciou, databázami, logovaním, spracovaním dát aj pri najjednoduchších úlohách. Ak sa chceš stať Java programátorom, musíš reťazce nielen používať, ale aj detailne rozumieť tomu, ako fungujú, čo dokážu a na čo si pri ich používaní treba dávať pozor.

Java String metódy substring, split, equals, contains a format v praktickom tutoriáli
Java String – metódy substring(), split(), equals() a format()

V článku sa dozvieš:

    Praktický tutoriál ťa prevedie všetkým, čo pri práci s Java String potrebuješ, od základov ako literály a porovnávanie reťazcov, až po praktické odporúčania na výkon a správne návyky. Nauč sa reťazce v Jave používať efektívne, bezpečne a bez najčastejších chýb.

    Prečo je Java String taký dôležitý

    String je v Jave špeciálna trieda. Nie je to primitívny typ ako int alebo double, hoci sa často správa veľmi prirodzene. V skutočnosti ide o immutable (nemeniteľný) objekt, ktorý má za sebou množstvo optimalizácií a špecifického správania v JVM.

    Prečo na tom záleží?

    Reťazce sa v aplikáciách vyskytujú vo veľkom množstve a používajú sa prakticky neustále. Nesprávna manipulácia s reťazcami môže výrazne zhoršiť výkon aplikácie. Porovnávanie reťazcov býva zdrojom častých chýb u začiatočníkov. Spracovanie textu je kritické pre webové aplikácie, API, spracovanie dát a bezpečnosť.

    Ak rozumieš tomu, ako Java pracuje s reťazcami, dokážeš písať stabilnejší a efektívnejší kód.

    Jednoduchý príklad v Jave

    K najjednoduchším programom vôbec patria programy v štýle „Hello World“. Ako by vyzeral taký v jazyku Java? To si teraz predvedieme. V tomto programe sa vypíše na obrazovku jednoduchý text z textového reťazca typu String (premenná message), v našom prípade veľkými písmenami. Výstup: AHOJ, JAVA!

    public class Main {
        public static void main(String[] args) {
            String message = "Ahoj, Java!";
            System.out.println(message.toUpperCase());
        }
    }

    Jednoduché? Určite. Ale za tým jedným riadkom sa skrýva veľa mechanizmov, ktoré spolu postupne preskúmame.

    Java String – základy, ktoré musíš poznať

    V tejto kapitole si vysvetlíme základnú filozofiu okolo Java String reťazcov. Ak pochopíš, čo je String, prečo je immutable a ako funguje String Pool, tvoja práca s reťazcami bude nielen rýchlejšia, ale aj bezpečnejšia a predvídateľnejšia.

    Poďme si to vysvetliť jednoducho, čitateľne a s praktickými ukážkami.

    Ako vytvoriť String v Jave – literály a textové bloky

    String literály

    Najčastejšie vytvoríš reťazec jednoducho takto:

    String name = "Java";

    Toto je reťazcový literál – text zapísaný medzi úvodzovkami.
    Je to najefektívnejší a najpoužívanejší spôsob vytvárania reťazcov v Jave.

    Escapovanie znakov

    Niektoré špeciálne znaky (napr. lomítko alebo úvodzovky) musíš zapísať so spätným lomítkom (pretože bez neho majú v jazyku iný význam):

    String path = "C:\\Users\\Jozef";
    String quote = "Java je \"super\" jazyk.";

    Medzi bežné escape sekvencie patria napr.:

    • nový riadok: `\n`
    • tabulátor: `\t`
    • úvodzovka: `\“`
    • spätné lomítko: `\\`

    Vytváranie reťazca dynamicky (cez new) a prečo sa tomu vyhnúť

    Ak napíšeš

    String text = new String("Java");

    vytvoríš dva objekty: literál „Java“ a nový objekt String s rovnakým obsahom. Toto je zbytočné a pomalšie. Preto sa tomuto spôsobu v Java praxi vyhýbaj, okrem veľmi špecifických prípadov.

    Recommend

    Odporúčame ti…

    Nepoužívaj vytváranie reťazcov cez new, namiesto toho používaj literál. Ekvivalentný príklad vyzerá nasledovne: String text = „Java“;

    Textové bloky (Text Blocks)

    Od verzie Java 13 máš k dispozícii funkcionalitu: textové bloky. Ak potrebuješ zapísať viacriadkový text, môžeš ho pomocou textových blokov zapísať v Jave napr. takto:

    String html = """
        <html>
            <body>
                <h1>Ahoj, Java!</h1>
            </body>
        </html>
        """;

    Výhody sú na prvý pohľad zrejmé. Použitím jednoduchého zápisu si zachováme formátovanie textu, pričom nemusíme žiadne znaky escapovať. Výborne sa hodí pre notácie JSON, XML, HTML, SQL.

    Čo je immutabilita String a prečo na nej záleží

    Kľúčová vlastnosť reťazcov v Jave je immutabilita. Táto vlastnosť znamená: String raz vytvorený už nikdy nezmeníš. Keď voláš metódu, ktorá mení reťazec, Java vytvorí v skutočnosti nový objekt:

    String name = "Java";
    String upper = name.toUpperCase();
    System.out.println(name);   // Java
    System.out.println(upper);  // JAVA

    Premenná name ostáva nezmenená. Metóda toUpperCase() vracia nový String.

    Prečo je String immutable?

    Existuje mnoho dôvodov, prečo bol dátový typ String navrhnutý ako immutable. Medzi najdôležitejšie dôvody patria: bezpečnosť, multithreading (thread-safety) a String Pool.

    Bezpečnosť

    Reťazce sa používajú v názvoch súborov, sieťových protokoloch, databázových spojeniach, načítavaní a inicializácii tried (class-loading). Je dôležité, aby sa nemohli meniť počas behu aplikácie.

    Thread-safety

    Keďže sa String nemení, viaceré súbežne bežiace vlákna ho môžu čítať naraz (bez synchronizácie).

    String Pool môže existovať iba vďaka immutabilite. Ak by sa string mohol meniť, zdieľanie jedného objektu medzi viacerými premennými by nebolo možné a bolo by nebezpečné.

    Dôsledky immutability v praxi

    Každá operácia, ktorá mení String, vytvorí nový objekt:

    String a = "A";
    a = a + "B"; // vzniká nový objekt!

    V cykloch to môže byť extrémne neefektívne. Z toho dôvodu existuje StringBuilder, ktorého sa dotkneme neskôr.

    7 min.Java memory management, správa pamäte

    Java memory management: Tipy a triky pre efektívnu správu pamäte

    V tomto článku ti prinášame konkrétne tipy a triky ako efektívne spravovať pamäť v Java.

    Čo je String Pool a metóda intern() – ako Java šetrí pamäť

    String Pool je špeciálna oblasť pamäte, kde Java ukladá unikátne string literály.

    V tomto príklade obidve premenné ukazujú na ten istý objekt v poole.

    String a = "Java";
    String b = "Java";
    System.out.println(a == b); // true

    Pre porovnanie, ak by sme rovnaké reťazce vytvárali pomocou new:

    String a = new String("Java");
    String b = new String("Java");
    System.out.println(a == b); // false

    Reťazce (napriek rovnakému textu) nie sú rovnaké, pretože tu vznikli dva samostatné objekty.

    Ako funguje intern()

    Metóda intern() vezme reťazec a vloží ho do String Poolu (ak tam ešte nie je).

    String x = new String("Hello");
    String y = x.intern();
    String z = "Hello";
    System.out.println(y == z); // true

    V praxi sa metóda intern() používa najmä: v parseroch, veľkých systémových frameworkoch a aplikáciách, kde sa opakuje obrovské množstvo rovnakých textov.

    Recommend

    Odporúčame ti…

    Zapamätaj si, že:

    • reťazce môžeš vytvárať literálmi, pomocou new (neodporúča sa) alebo textovými blokmi,
    • string v Jave je immutable, každá modifikácia vytvára nový objekt,
    • vďaka immutabilite existuje String Pool, ktorý zlepšuje výkon aj pamäťové nároky,
    • porovnávanie reťazcov pomocou operátora == nie je správne, v ďalšej kapitole si ukážeme, prečo je to tak.

    Java String metódy

    Osvojením si týchto operácií s Java String zvládneš vyriešiť väčšinu problémov spojených s textom, od validácie textových vstupov cez parsovanie dát až po tvorbu skriptov či naprogramovanie vlastného parsera.

    Zisťovanie dĺžky reťazca a prístup ku znakom

    Základom práce s reťazcami je zistiť ich dĺžku a pristupovať k jednotlivým znakom na konkrétnych pozíciách.

    Metóda Java String length()

    Slúži na zistenie dĺžky reťazca. Patrí medzi najjednoduchšie operácie so String.

    String text = "Java";
    System.out.println(text.length()); // 4

    Pozor: length() pre String je metóda, pri poliach je to atribút (array.length).

    Metóda charAt(index)

    Predstavuje získanie znaku na pozícii. Indexovanie začína od nuly.

    String text = "Java";
    char c = text.charAt(2);
    System.out.println(c); // 'v'

    Najčastejšia chyba pri indexovaní posledného znaku reťazca vyzerá nasledovne:

    text.charAt(text.length()); // vyvolá StringIndexOutOfBoundsException

    Posledný znak reťazca má vždy index length() – 1.

    Porovnávanie reťazcov v Jave

    Správne porovnávanie reťazcov v Jave je jednou z najčastejších tém pre začiatočníkov. Operátor == neporovnáva obsah reťazcov, ale ich referencie (miesta v pamäti).

    Začiatočníci v Jave často nesprávne porovnávajú dva reťazce:

    String a = "Java";
    String b = "Java";
    System.out.println(a == b); // true (ale náhodou!)

    Toto funguje len kvôli String Poolu. V ňom existuje iba jeden literál, preto sa porovnáva referencia toho istého objektu String, čo prirodzene vráti true.

    Pri objektoch vytvorených cez new, to ale neplatí:

    String x = new String("Java");
    String y = new String("Java");
    System.out.println(x == y); // false

    A to preto, lebo operátor == porovnáva referencie a nie obsah reťazcov.

    Metóda Java String equals()

    Java String equals() slúži na porovnávanie obsahu reťazcov. V nasledovnom príklade majú oba reťazce zhodný obsah.

    String a = "Java";
    String b = "Java";
    System.out.println(a.equals(b)); // true

    Metóda equalsIgnoreCase()

    Táto metóda je vhodná na porovnávanie reťazcov, ak ti nezáleží na veľkosti písmen.

    “java”.equalsIgnoreCase(“JAVA”);//true

    Spájanie reťazcov (+, concat, StringBuilder)

    Existuje viacero metód na spájanie reťazcov.

    Operátor +

    Operátor + je jednoduchý, ale môže byť neefektívny. V tomto príklade sa tento zápis preloží na úrovni kompilátora na StringBuilder.

    String s = “Hello” + “world!”;
    "java".equalsIgnoreCase("JAVA"); // true

    Ale pozor, V cykloch je operácia + s reťazcami veľmi neefektívna:

    String result = "";
    for (int i = 0; i < 1000; i++) {
        result += i; // vzniknú až stovky nových objektov!
    }

    Metóda concat()

    Rýchla, ale nepraktická metóda na spájanie reťazcov. Problém tejto metódy je, že nevie pracovať s null a vyhodí výnimku. Preto sa v praxi príliš nepoužíva. V nasledovnom príklade je použitie OK.

    String s = "Hello".concat(" world");

    Spájanie reťazcov cez StringBuilder

    Tento spôsob používaj pri spájaní veľkého množstva textu. Ponúka najlepší výkon a nevytvára žiadne zbytočné objekty. Rovnako sa hodí aj do cyklov.

    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < 1000; i++) {
        sb.append(i).append(", ");
    }
    String result = sb.toString();

    Vyhľadávanie textu

    Metódy na vyhľadávanie textu v reťazci sa ti zídu napríklad pri overovaní vstupov, filtrovaní dát alebo parsovaní súborov.

    Metóda contains()

    Zistí, či sa daný literál nachádza v reťazci. Dôležité je vedieť, že táto metóda rozlišuje veľkosť písmen.

    "hello world".contains("world");  // true
    "hello world".contains("World");  // false

    Metóda indexOf()

    Vracia pozíciu prvého výskytu podreťazca. Ak nič nenájde, návratová hodnota je -1.

    "banana".indexOf("na"); // 2

    Metóda startsWith ()

    Zistí, či reťazec začína daným literálom.

    "Hello.java".startsWith("Hello"); // true

    Metóda endsWith ()

    Zistí, či reťazec končí daným literálom.

    "Hello.java".endsWith(".java"); // true

    Posledné dve metódy sú veľmi užitočné pri filtrovaní súborov či URL adries. Kompletný prehľad všetkých metód triedy String nájdeš v oficiálnej dokumentácii Java String API (JDK 25).

    Príklad – reťazec obsahujúci iba písmená

    Ak by sme chceli zistiť, či reťazec obsahuje iba písmená, vedeli by sme si na tento účel napísať takúto metódu:

    public static boolean isAlphabetic(String s) {
        for (char c : s.toCharArray()) {
            if (!Character.isLetter(c))
                return false;
        }
        return true;
    }
    

    Podreťazce (Java substrings) a práca s časťami textu

    V praxi treba často pracovať len s časťou reťazca. Presne na to slúžia metódy Java substring() a Java split().

    Metóda substring(begin, end)

    Ide o extrahovanie textu medzi indexami begin a end. Pozor, znak na indexe end sa do výsledku nezahrnie.

    String text = "Hello Java";
    String s1 = text.substring(6);   // "Java"
    String s2 = text.substring(0, 5); // "Hello"

    Metóda Java String split(delimiter)

    Znamená rozdelenie textu na časti oddeľovačom. Metóda split() využíva regulárny výraz (regex), takže niektoré znaky treba escapovať (napr. `.` alebo `|`).

    String line = "Peter;25;Developer";
    String[] parts = line.split(";");
    System.out.println(parts[0]); // Peter
    System.out.println(parts[1]); // 25
    System.out.println(parts[2]); // Developer

    Nahrádzanie textu

    Java ponúka viacero metód na nahrádzanie textu v reťazci.

    Metóda Java String replace(old, new)

    Nahradenie daného textu v reťazci novým na všetkých pozíciách.

    "1-2-3-4".replace("-", ":"); // 1:2:3:4

    Metóda replaceFirst (regex, new)

    Nahradenie daného textu v reťazci novým, nahradí len prvý výskyt.

    String text = "Mačka spí. Mačka je unavená.";
    String result = text.replaceFirst("Mačka", "Pes");
    System.out.println(result); // Výstup: Pes spí. Mačka je unavená.

    Odstránenie bielych znakov

    Pri spracovaní vstupov je často potrebné odstrániť prebytočné biele znaky z reťazca. Java má na to dve metódy.

    Metóda trim() – odstráni úvodné a koncové biele znaky (whitespace) v reťazci

    Medzi biele znaky, ktoré odstráni patria medzery, tabulátory, prechody na nové riadky, resp. znaky s Unicode kódom (<=  U+0020).

    Metóda strip() – novšia metóda na odstránenie bielych znakov

    Metóda strip(), dostupná od verzie Java 11, odstraňuje všetky Unicode whitespace znaky, ktoré sú definované metódou Character.isWhitespace(). Táto metóda oproti trim() je modernejšia, presnejšia a mala by byť preferovaná v nových projektoch.

    Praktický príklad – parsovania informácií z textu

    Nasledujúci príklad ilustruje viacero techník naraz, ktoré sme si práve predstavili. Potrebujeme vyextrahovať informácie zo zadaného reťazca.

    String input = " Peter; 25;Developer ";
    // Očistenie vstupu o biele znaky
    input = input.strip();
    // Rozdelenie
    String[] parts = input.split(";");
    // Vyčistenie medzier
    String name = parts[0].strip();
    int age = Integer.parseInt(parts[1].strip());
    String job = parts[2].strip();
    // Vyskladanie výstupu
    StringBuilder sb = new StringBuilder();
    sb.append("Meno: ").append(name).append("\n");
    sb.append("Vek: ").append(age).append("\n");
    sb.append("Pozícia: ").append(job);
    System.out.println(sb.toString());

    Výstup:

    Meno: Peter
    Vek: 25
    Pozícia: Developer
    Recommend

    Odporúčame ti…

    Zapamätaj si, že:

    • Metódy length() a charAt() sú základ pre manipulácie s textom.
    • Pre porovnávanie reťazcov používaj equals() a nie operátor `==`.
    • V cykloch pre spájanie používaj StringBuilder a nie operátor `+`.
    • Text rozsekáš cez substring() a split().
    • Hľadanie v reťazci riešiš cez contains(), indexOf(), startsWith(), endsWith().
    • Nahrádzať môžeš pomocou replace().
    • Nezabudni vyčistiť reťazec o biele znaky, ak z neho extrahuješ informáciu.

    28 min.Žena programátorka píše kód do editora

    Ako sa naučiť programovať? Základy programovania pre úplných začiatočníkov a tipy, ako začať

    Zaujíma ťa programovanie a chcel by si sa ho naučiť? Zisti, čo všetko by si mal vedieť, aké zručnosti by ti nemali chýbať a čo ťa čaká.

    Formátovanie a konverzia Java String

    V tejto kapitole sa pozrieme na praktické techniky na formátovanie Java String (výstupy, logy, reporty) a na konverziu medzi String a základnými typmi alebo kolekciami.

    Metóda Java String.format() a formátovacie špecifikátory

    Metóda String.format (a príbuzné System.out.printf(), trieda Formatter) sú najjednoduchší spôsob, ako vytvoriť čitateľné reťazce s číslami, zarovnaním a presnosťou.

    Formátovanie textu do reťazca

    String name = "Peter";
    int age = 32;
    String s = String.format("Meno: %s, Vek: %d", name, age);
    System.out.println(s); // Meno: Peter, Vek: 32

    Najčastejšie špecifikátory

    • %s string (volá toString(), ak je argument null, výsledok je text „null“).
    • %d celé číslo
    • %f desatinné číslo (float/double)
    • %n nový riadok (platformovo nezávislý)

    Šírka a presnosť

    V metóde format() vieme upraviť aj šírku a presnosť (konvertovaného čísla) na reťazec. Napr. %8.2f znamená: celková šírka 8 znakov, 2 desatinné miesta.

    double pi = Math.PI;
    System.out.println(String.format("Pi: %.2f", pi));
    System.out.println(String.format("Číslo: %8.2f", 123.456));

    Výstup:

    Pi: 3,14
    Číslo:   123,46

    Lokalizované formátovanie

    Ak potrebuješ formátovanie čísla podľa špecifického regiónu, použi Locale. Výraz %,.2f pridá separátor tisícov.

    import java.util.Locale;
    
    double value = 12345.67;
    String us = String.format(Locale.US, "%,.2f", value); // 12,345.67
    String de = String.format(Locale.GERMANY, "%,.2f", value); // 12.345,67

    Konverzia medzi String a číslami

    Konverzie sú bežné pri parsovaní CSV súborov, čítaní parametrov z URL alebo validácii vstupov.

    Konverzia Java String do int / long / double

    Každá trieda pre daný dátový typ čísla obsahuje príslušnú triedu na konverziu String na daný číselný typ. Ak reťazec nie je platné číslo, metódy vyhodia NumberFormatException, preto je potrebné parsovať reťazce na čísla v try-catch bloku.

    try {
        int i = Integer.parseInt("123");
        long l = Long.parseLong("10000000000");
        double d = Double.parseDouble("3.1415");
    } catch (NumberFormatException e) {
        // TODO: ošetriť chybný vstup
    }

    BigDecimal – dátový typ pre peniaze

    Pre matematické operácie s peniazmi nepoužívaj dátový typ double, môžeš naraziť na problémy so zaokrúhľovaním a presnosťou. Java pre tieto operácie ponúka dátový typ BigDecimal. Ten vieme vytvoriť priamo so String konštruktorom:

    import java.math.BigDecimal;
    
    BigDecimal bd = new BigDecimal("12.34");

    Parsovanie reťazcov s regionálnym formátom

    Pri formátoch (špecifických pre daný región napr. DE), ako 1.234,56 použi NumberFormat:

    import java.text.NumberFormat;
    import java.text.ParseException;
    import java.util.Locale;
    
    NumberFormat nf = NumberFormat.getInstance(Locale.GERMANY);
    try {
        Number num = nf.parse("1.234,56"); // môže hodiť ParseException
    } catch (ParseException e) {
        // TODO: ošetriť chybný vstup
    }

    Konverzia čísel na String

    Pri prevode čísel do reťazca máš v Jave viac možností. Líšia sa najmä tým, ako pracujú s null, či sú rýchle alebo podporujú formátovanie. Pozrime sa na najčastejšie používané metódy.

    Metóda String.valueOf(x)

    Univerzálny, bezpečný spôsob prevodu. Funguje pre všetky typy (int, long, double, objekty…). Nespôsobí výnimku pri null, namiesto toho vráti reťazec „null“.

    Integer num = null;
    String s1 = String.valueOf(num); // "null"
    
    double d = 3.14;
    String s2 = String.valueOf(d);   // "3.14"

    Metódy toString() pre rôzne číselne typy (napr. Integer.toString(i), Long.toString(l), …) ponúkajú rýchly a priamočiary spôsob pri práci s primitívnymi typmi. Tieto metódy neprijímajú null, pretože pracujú s primitívnymi typmi.

    int age = 32;
    String s = Integer.toString(age); // "32"

    Formátovanie pomocou metódy String.format()

    Metódu String.format() sme si už predstavili. Hodí sa, ak potrebuješ presné formátovanie, zarovnanie, počet desatinných miest alebo lokalizáciu. Tento spôsob je o niečo pomalší, ale veľmi čitateľný a flexibilný.

    Prevod medzi String a poliami/zoznamami

    Často potrebuješ previesť údaje medzi String a kolekciami, napr. robíš iterovanie, parsovanie alebo vytváraš CSV.

    Prevod String do poľa znakov

    Takto prevedieš String do char[]. Pole má tú výhodu, že okrem rýchleho prístupu, môžeš do poľa aj priamo zapisovať.

    String word = "Java";
    char[] chars = word.toCharArray();

    Prevod poľa znakov do String

    Takto prevedieš char[] do String.

    char[] arr = {'J', 'a', 'v', 'a'};
    String s = new String(arr);

    Metóda split() – rozdelenie reťazca na časti

    Metódu split() sme už spomínali. Výborne sa hodí, ak potrebujeme rozbiť reťazec do menších reťazcov podľa oddeľovača.

    String line = "a,b,c";
    String[] parts = line.split(","); // ["a", "b", "c"]

    Spojenie reťazcov v kolekcii List<String>

    Pre spojenie List<String> do jedného reťazca môžeme využiť metódu join():

    import java.util.List;
    List<String> names = List.of("Jano", "Miro", "Zuzka");
    String csv = String.join(",", names); // "Jano,Miro,Zuzka"

    Ak zoznam obsahuje null hodnotu, metóda String.join() vyhodí NullPointerException, preto odstráň, alebo naplň null hodnoty pred volaním.

    Recommend

    Odporúčame ti…

    Zapamätaj si, že:

    • format() s %d, %s alebo s presnosťou dvoch desatinných miest slúži na čitateľné formátovanie textu.
    • Pri potrebe lokalizácie použi objekt Locale.
    • parseInt() alebo Double.parseDouble() umožňujú konvertovať text na číslo. Nezabudni vždy ošetriť výnimku NumberFormatException pre neplatný vstup.
    • Pre prácu s peniazmi používaj BigDecimal, aby si sa vyhol problémom s presnosťou desatinných čísiel.
    • valueOf() je bezpečný spôsob prevodu hodnoty na text, pri null vráti text ”null”.
    • Metóda toCharArray() a konštruktor new String z poľa znakov umožňujú rýchly prevod medzi textom a poľom znakov.
    • Na spojenie prvkov kolekcie do jedného reťazca použi metódu join(). Predtým sa uisti, že kolekcia neobsahuje null
    • Pri parsovaní CSV zváž použitie knižnice, ak môže byť formát zložitejší.

    Prehľad Java String API metód

    Táto tabuľka poskytuje rýchly prehľad najpoužívanejších Java String metód s krátkym popisom.

    Metóda Popis
    substring() Vráti časť reťazca podľa zadaných indexov.
    charAt() Vráti znak na určenej pozícii.
    contains() Skontroluje, či reťazec obsahuje podreťazec.
    indexOf() Vráti pozíciu zadaného znaku alebo podreťazca.
    trim() Odstráni medzery na začiatku a konci reťazca.
    toLowerCase() Prevedie všetky znaky reťazca na malé písmená.
    toUpperCase() Prevedie všetky znaky reťazca na veľké písmená.
    isEmpty() Skontroluje, či je reťazec prázdny.
    split() Rozdelí reťazec na pole podľa zadaného separátora.
    replace() Nahradí starý znak alebo podreťazec novým.
    replaceFirst() Nahradí prvý výskyt podreťazca.
    replaceAll() Nahradí všetky podreťazce zhodujúce sa s regexom.
    startsWith() Skontroluje, či reťazec začína zadaným textom.
    endsWith() Skontroluje, či reťazec končí zadaným textom.
    join() Spojí viacero reťazcov s použitím separátora.
    format() Vytvorí naformátovaný reťazec podľa špecifikácie.
    valueOf() Vráti reťazcovú reprezentáciu zadaného objektu alebo primitívu.
    toCharArray() Prevedie reťazec na pole znakov.
    subSequence() Vráti podsekvenciu reťazca (CharSequence).
    compareTo() Porovná dva reťazce podľa slovníkového poradia.
    compareToIgnoreCase() Porovná dva reťazce ignorujúc veľkosť písmen.
    matches() Skontroluje, či reťazec zodpovedá regex vzoru.
    getBytes() Prevedie reťazec na pole bajtov.
    contentEquals() Skontroluje, či je reťazec rovnaký ako zadané CharSequence.
    hashCode() Vráti hash kód reťazca.
    intern() Vráti kanonickú reprezentáciu reťazca (String pool).

    Sledovať zmeny Java String sa oplatí

    Java String je jedným z najdôležitejších dátových typov, s ktorým sa ako Java developer stretneš prakticky denne. Práca s reťazcami sa neustále vyvíja a s každou novou verziou JDK pribúdajú metódy, ktoré zjednodušujú bežné operácie. Príkladom sú textové bloky z Java 13 alebo metóda strip() z Java 11. Sledovať tieto zmeny sa oplatí, pretože ti ušetria riadky kódu aj zbytočné chyby.

    Zdroj:

    https://docs.oracle.com/en/java/javase/25/docs/api//java.base/java/lang/String.html

    O autorovi

    Jozef Wagner

    Java Developer Senior

    Viac ako 10 rokov programujem v Jave, momentálne pracujem v msg life Slovakia ako Java programátor senior a pomáham zákazníkom implementovať ich požiadavky do poistného softvéru Life Factory. Vo voľnom čase si rád oddýchnem v lese, prípadne si zahrám nejakú dobrú počítačovú hru.

    Daj nám o sebe vedieť