1. Pagbabago ng mga string
Sa Java, ang mga string ay mga hindi nababagong bagay. Ginawa ito upang gawing lubos na na-optimize ang klase ng String at upang payagan itong magamit kahit saan. Halimbawa, ang mga hindi nababagong uri lamang ang inirerekomenda para gamitin bilang mga susi sa koleksyon ng HashMap .
Gayunpaman, madalas na lumilitaw ang mga sitwasyon kung kailan makikita ng mga programmer na mas maginhawa para sa String
klase na maging nababago. Gusto nila ng klase na hindi gumagawa ng bagong substring tuwing tinatawag ang isa sa mga pamamaraan nito.
Well, ipagpalagay na mayroon kaming isang napakalaking string at kailangan naming madalas na magdagdag ng isang bagay sa dulo nito. Sa kasong ito, kahit na ang isang koleksyon ng mga character ( ArrayList<Character>
) ay maaaring maging mas mahusay kaysa sa patuloy na muling paglikha at pagsasama-sama ng mga String object.
Iyan mismo ang dahilan kung bakit naidagdag sa wikang Java ang isang tulad-String na uri na maaaring baguhin. Ito ay tinatawag na StringBuilder
.
Paglikha ng isang bagay
Upang lumikha ng isang StringBuilder
bagay batay sa isang umiiral na string, kailangan mong magsagawa ng isang pahayag tulad ng:
StringBuilder name = new StringBuilder(string);
Upang lumikha ng isang walang laman na nababagong string, kailangan mong gumamit ng isang pahayag na tulad nito:
StringBuilder name = new StringBuilder();
Listahan ng mga pamamaraan
Ang StringBuilder
klase ay may dalawang dosenang nakakatulong na pamamaraan. Narito ang mga pinakamahalaga:
Pamamaraan | Paglalarawan |
---|---|
|
Kino-convert ang naipasa na bagay sa isang string at idinadagdag ito sa kasalukuyang string |
|
Kino-convert ang naipasa na bagay sa isang string at ipinapasok ito sa kasalukuyang string |
|
Pinapalitan ang bahagi ng string na tinukoy ng start..end interval ng naipasa na string |
|
Tinatanggal ang character na may tinukoy na index mula sa string |
|
Tinatanggal ang mga character sa loob ng tinukoy na agwat mula sa string |
|
Naghahanap ng substring sa kasalukuyang string |
|
Naghahanap ng substring sa kasalukuyang string, simula sa dulo |
|
Ibinabalik ang character sa string sa naipasa na index |
|
Ibinabalik ang substring na tinukoy ng tinukoy na agwat |
|
Binabaliktad ang kasalukuyang string. |
|
Binabago ang character sa tinukoy na index sa naipasa na character |
|
Ibinabalik ang haba ng string sa mga character |
Narito ang isang maikling paglalarawan ng bawat pamamaraan
2. Paglalarawan ng mga pamamaraan:
Nagdaragdag sa isang string
Upang magdagdag ng isang bagay sa isang nababagong string ( StringBuilder
), gamitin ang append()
pamamaraan. Halimbawa:
Code | Paglalarawan |
---|---|
|
|
Pag-convert sa isang karaniwang string
Upang i-convert ang isang StringBuilder
bagay sa isang String object, kailangan mo lamang na tawagan ang toString()
pamamaraan nito. Halimbawa
Code | Output |
---|---|
|
|
Paano ko tatanggalin ang isang character?
Upang tanggalin ang isang character sa isang nababagong string, kailangan mong gamitin ang deleteCharAt()
paraan. Halimbawa:
Code | Output |
---|---|
|
|
Paano ko papalitan ang bahagi ng isang string ng isa pang string?
Para dito mayroong replace(int begin, int end, String str)
pamamaraan. Halimbawa:
Code | Output |
---|---|
|
|
3. Mga kapaki-pakinabang na halimbawa ng pagtatrabaho sa mga string
Paano ko mababaligtad ang isang string?
Mayroong isang espesyal na paraan para sa paggawa nito — reverse()
; Halimbawa:
Code | Output |
---|---|
|
|
StringBuffer
klase
May isa pang klase — StringBuffer, na isang analogue ng StringBuilder
klase, ngunit ang mga pamamaraan nito ay minarkahan ng synchronized
modifier. Nangangahulugan ito na ang StringBuffer
bagay ay maaaring ma-access nang sabay-sabay mula sa maraming mga thread.
Ngunit ito ay mas mabagal kaysa sa StringBuilder
. Maaaring kailanganin mo ang klase na ito kapag nagsimula kang aktibong tuklasin ang multithreading sa Java Multithreading quest.
GO TO FULL VERSION