Java:Sõne

Allikas: Kursused
Redaktsioon seisuga 12. veebruar 2015, kell 07:52 kasutajalt Ago (arutelu | kaastöö) (Uus lehekülg: 'Sõne (ik string) on sümbolite kogum. Sõnest võib mõelda kui tähtede (või üldisemalt sümbolite) massiivist. Sõne on Java keeles objekt, mis tähendab, et tema kohta keht...')
(erin) ←Vanem redaktsioon | Viimane redaktsiooni (erin) | Uuem redaktsioon→ (erin)
Mine navigeerimisribale Mine otsikasti

Sõne (ik string) on sümbolite kogum. Sõnest võib mõelda kui tähtede (või üldisemalt sümbolite) massiivist. Sõne on Java keeles objekt, mis tähendab, et tema kohta kehtivad natuke teised reeglid kui primitiivsete andmetüüpide kohta.

Sõne tüüpi muutuja loomine:

String s;

Muutuja loomisel võib sellele ka sisu anda:

String s = "tere";

Meetodid

length()

Tagastab sõne pikkuse (mitu sümbolit on sõnes).

System.out.println("tere".length()); // prindib "4"
System.out.println("".length()); // prindib "0"

charAt

Võimaldab sõnest leida ühe sümboli vastavalt ette antud indeksile. See töötab sarnaselt nagu massiivide puhul. Indeks hakkab 0-st, st esimese elemendi index on 0. Meetod tagastab andmetüübina char ehk ühe sümboli.

char c = "tere".charAt(0); // c = 't'
c = "tere".charAt(1); // c = 'e'

substring

Võimaldab sõnest alamosa võtta. Samanimelist meetodit on kaks: üks on ühe argumendiga, teine on kahe argumendiga.

Ühe argumendiga meetod tagastab alamsõne, mille algus on ette antud indeksiga positsioonist ning mille lõpp on algse sõne lõpp.

System.out.println("tere".substring(1)); // prindib "ere"
System.out.println("tere".substring(3)); // prindib "e"

Kahe argumendiga meetod tagastab alamsõne, mille algus on esimese argumendiga määratud indeksiga positsioonist ning mille lõpp on teise argumendiga määratud indeksiga positsioonist eelmine positsioon. Ehk siis alguse positsioon on kaasa arvatud, lõpu oma ei ole kaasa arvatud.

System.out.println("tere".substring(1,3)); // prindib "er"
System.out.println("tere".substring(3,4)); // prindib "e"

indexOf

Otsib sõnest etteantud (alam)sõne ja tagastab positsiooni, kust otsitav (alam)sõne leiti. Kui otsitavat (alam)sõne ei leita, tagastab -1.

System.out.println("tere".indexOf("t")); // prindib "0"
System.out.println("tere".indexOf("te")); // prindib "0"
System.out.println("tere".indexOf("re")); // prindib "2"
System.out.println("tere".indexOf("a")); // prindib "-1"

Kasutada on võimalik ka kahe argumendiga meetodit. Teine argument näitab ära, alates mis positsioonist otsima hakata.

System.out.println("tere".indexOf("t", 0)); // prindib "0"
System.out.println("tere".indexOf("t", 1)); // prindib "-1", kuna "t" ei leidu, kui hakata otsima alates positsioonist 1 (ehk siis teisest tähest)
System.out.println("tere".indexOf("e", 1)); // prindib "1"
System.out.println("tere".indexOf("e", 2)); // prindib "3", kui hakata positsioonist 2 otsima, leidub esimene "e" positsioonil 3