"Menurutmu, Amigo? Apa kelas Jawa sing paling populer sawise int?"

"Sampeyan wis menehi kula spoiler ing judhul pawulangan, Ellie. Iku String!"

"Pancen, iku spoiler. Stringdigunakake pancen nang endi wae. Wis Bunch saka cara migunani sing sampeyan luwih ngerti.

" StringKelas iku mung kelas liyane saka jinis primitif kang literal bisa digunakake ing switchstatement; compiler nangani tambahan senar lan String obyek ing cara khusus; Stringobyek sing storied ing memori ing cara khusus. Sejatine, kelas Stringiku banget kelas khusus.

"Uga, Stringkelas kasebut duwe akeh kelas pembantu sing tujuane kanggo luwih gampang nggarap strings ing basa Jawa. Nalika sampeyan sinau kabeh iki, akeh perkara sing bakal dadi luwih gampang kanggo sampeyan."

"Aku ora sabar ngenteni."

"Inggih, kita bakal miwiti saka inti banget ekosistem iki - organisasi saka kelas String. Struktur kelas Stringiku bener banget prasaja: nang iku array karakter ( charlarik ) sing nyimpen kabeh karakter saka senar. contone, iki carane tembung 'Hello' disimpen:

Struktur kelas String

Iku penting.

Bener, iki ora cukup akurat. Amarga Stringkelas iku penting banget, nggunakake akeh optimizations, lan data internal disimpen ora minangka Uploaded karakter, nanging mung minangka Uploaded byte.

Metode kelas String

Kelas Stringwis akèh cara: wis 18 konstruktor piyambak! Dadi, ing ngisor iki aku bakal dhaptar mung sing paling asring digunakake:

Metode Katrangan
int length()
Ngasilake jumlah karakter ing senar
boolean isEmpty()
Priksa manawa senar kasebut minangka senar kosong
boolean isBlank()
Priksa manawa string mung ngemot karakter spasi putih: spasi, tab, baris anyar, lsp.
char charAt(int index)
Ngasilake karakter ing posisi indeks ing senar.
char[] toCharArray()
Ngasilake array saka karakter (salinan) sing nggawe senar
byte[] getBytes()
Ngonversi string menyang sakumpulan bait lan ngasilake array bait.
String[] split(String regex)
Pisah senar dadi pirang-pirang substring.
String join(CharSequence delimiter, elements)
Nggabungake sawetara substrings bebarengan
String intern()
Nempatake senar menyang blumbang senar.

"Sing katon apik banget!"

"Ayo nulis program sing ngowahi path file saka gaya Unix menyang gaya Windows. Unix nggunakake karakter /kanggo misahake folder, nalika Windows nggunakake \karakter kasebut.

Solusi 1. Nggunakake chararray

Kode Cathetan
Scanner console = new Scanner(System.in);
String path = console.nextLine();

char[] chars = path.toCharArray();
for (int i = 0; i < chars.length; i++)
   if (chars[i] == '/')
      chars[i] = '\\';

String result = new String(chars);
System.out.println(result);
Nggawe obyek Scanner
Maca baris saka console

Ngonversi senar menyang array karakter
Loop liwat karakter
Yen karakter punika /,
ngganti karo \. Aja lali babagan uwal.

Nggawe string anyar adhedhasar array karakter.
Tampilake senar.

Solusi 2. Nggunakake split()lan join()cara:

Kode Cathetan
Scanner console = new Scanner(System.in);
String path = console.nextLine();

String array[] = path.split("\\/");


String result = String.join("\\", array);


System.out.println(result);
Nggawe obyek Scanner
Maca baris saka console

Ngonversi string menyang Uploaded strings . Karakter kasebut /digunakake minangka pemisah (tambahan rong garis miring minangka asil saka uwal ganda).
Gabungke kabeh senar ing array senar . Iki \digunakake minangka separator (kita waca iku oncat).

Tampilake senar.

Solusi 3. Nggunakake replace(char oldChar, char newChar)metode:

Kode Cathetan
Scanner console = new Scanner(System.in);
String path = console.nextLine();

String result = path.replace('/', '\\');

System.out.println(result);
Nggawe obyek Scanner
Maca baris saka console

Mung ngganti siji karakter karo liyane
(loro oncat)
Nampilake senar.

"Aku paling seneng karo solusi katelu. Nanging aku bakal latihan kabeh telu."

"Inggih, Amigo. Aku weruh yen sampeyan wis ora sabar kanggo ngleksanakake kawruh anyar sampeyan. Pelajaran wis rampung."