|
|||||||||||||||||||||||||||||||||||||||||||||||||
Menu
Distributions (131)
bootable [55]
commercial [7] no-commercial [42] unclassified [20] [7]
Software (10844)
|
Programování v jazyku Java (6) - Řetězce IV tomto díle si ukážeme jak jsou v Javě ukládány a zpracovávány textové informace.
Řetězce I
Řětězce slouží k ukládání textových informací. V Javě jsou vnitřně kódovány v UNICODE. Používají dvě základní objektové třídy - Třída String slouží k ukládání konstantních textových informací, které nehodláme (nebo jen málo) měnit. Hodnota v objektu typu String totiž je konstantní, při změně nebo přiřazení jiné hodnoty je vytvořen v paměti nový objekt a přiřazen původní proměnné. Původní hodnota objektu je posléze v paměti smazána. Což spotřebuje určitou časovou i systémovou režii. Proto je pro ukládání textových informací, které jsou v programu častěji modifikovány, rozšiřovány či spojovány lépe použít třídu StringBuffer, které se budeme věnovat příště. StringProměnnou typu String lze obvykle inicializovat přiřazením textové konstanty: String s= "Helo World"; Kromě přímého přiřazení pevné textové hodnoty můžeme řetězec inicializovat již při jeho deklaraci i jinak: String s= new String() ; // prázdný řetězec String s= new String(String t); //rovnou překopíruje jiný řetězec String s= new String(char ch[] ); // řetězec z pole znaků String s= new StringBuffer(); // řetězec z objektu StringBuffer String s = new String(byte[] pole,"ISO8859_2") /*vytvoří a převede řetězec z pole znaků v jiné znakové sadě" */ Řetězce můžeme spojovat (s výhradou vůči optimalizaci, viz výše ) operátorem + String Jmeno="Jan";String Prijmeni="Novak"; String Vizitka= Jmeno+ " "+ Prijmeni; System.out.println("Jeho inicialy jsou " + Jmeno+ " "+ Prijmeni); Aktuální délku řetězce vrací metoda length : int delka=Jmeno.length();
Co provádět nemůžeme, to je porovnání řetězců operátorem String s1="Jan";boolean ok; ok=s1.equals("Jan"); //vraci true ok=s1.equals("jan"); //vraci false ok=s1.equalsIgnoreCase("jan"); //takhle je to OK ok=s1.equals("franta"); //vraci false
Potřebujeme-li při porovnání určit který z řetězců je větší, použijeme metodu String s1="Jan"; int i=s1.compareTo("franta"); // vrací záporné číslo Metoda compareTo vrací 0 pokud jsou oba řetězce stejné,záporné číslo pokud je porovnávaný řetězec menší než předaný poarametr a kladné číslo pokud je větší.
Pro porovnání zda text obsahuje pouze určité skupiny znaků slouží metoda
Jednotlivé znaky v řetězci lze měnit pomocí metody String s="01234567890"; s=s.replace('0','X'); //změní všechny znaky 0 na X
K metodám, měnícím obsah řetězce patří také
Vyhledávat text v řetězci lze pomocí metody
Opačnou funkci, tedy vrácení řetězce na určité pozici obstarávají metody String s="01234567890" int poz= s.indexOf("456") //vyhledá pozici podřetězce v celém řetězci boolean ok=s.startsWith("0123") // String sub= s.substring(0,2); //vrací podřetězec od indexu 0 do 2-1
Related article
Programování v jazyku Java (1) - Úvod Programování v jazyku Java (2) - instalace, překlad a spouštění Programování v jazyku Java (3) - Základy syntaxe Programování v jazyku Java (4) - Proměnné a operace s nimi Java (5) - Řízení programu Programování v jazyku Java (7) - Řetězce II Programování v jazyku Java (8) - Pole I Programování v jazyku Java (9) - Pole II Java (10) - Kontejnery I. Java (11) - Kontejnery II. Java (12) - Kontejnery III. Java (13) - JDK, vývojová prostředí Java (14) - štábní kultura, specifika Java (15) - I/O operace I. Java (16) - I/O operace II. Java (17) - práce se soubory Java (18) - síťová komunikace I. Java (19) - síťová komunikace II. Java (20) - vlákna Java (21) - datové typy Java 5 - recenze knihy Java (22) - omezování práv I. Java (23) - omezování práv II. Java (24) - úvod do grafiky a GUI Java (25) - základní grafické třídy Java (26) - tvorba GUI Java (27) - seznamy, stromy, tabulky Java (28) - renderery a editory Java (29) - správci rozložení Java (30) - Look and Feel Java (31) - základy tisku Java (32) - tiskové služby BlueJ IDE JavaFX - prostředí pro tvorbu RIA aplikací (1) Java a rozšířené atributy souborů JavaFX - prostředí pro tvorbu RIA aplikací (2) Previous Show category (serial) Next
|
Szukanie oprogramowania
|
|||||||||||||||||||||||||||||||||||||||||||||||
©Pavel Kysilka - 2003-2024 | maillinuxsoft.cz | Design: www.megadesign.cz |