Je, StringBuilder ni haraka kuliko uunganishaji wa kamba?
Je, StringBuilder ni haraka kuliko uunganishaji wa kamba?

Video: Je, StringBuilder ni haraka kuliko uunganishaji wa kamba?

Video: Je, StringBuilder ni haraka kuliko uunganishaji wa kamba?
Video: Самая полезная клавиша при работе в Excel 2024, Aprili
Anonim

1) The Kamba object haibadiliki katika Java lakini StringBuffer na StringBuilder ni vitu vinavyoweza kubadilika. 2) StringBuffer imelandanishwa wakati StringBuilder sio ambayo hufanya StringBuilder haraka kuliko StringBuffer. 3) Kuunganisha opereta "+" inatekelezwa ndani kwa kutumia StringBuffer au StringBuilder.

Vile vile mtu anaweza kuuliza, je umbizo la kamba ni haraka kuliko upatanisho?

Sababu kuu ni hiyo Kamba . umbizo () inaweza kubinafsishwa kwa urahisi zaidi na maandishi yaliyopakiwa kutoka kwa faili za rasilimali ambapo mshikamano haiwezi kujanibishwa bila kutoa kitekelezo kipya chenye msimbo tofauti kwa kila lugha. Matokeo ya muda ni kama ifuatavyo: Kuunganisha = 265 milisekunde.

Kwa kuongeza, ni lini haupaswi kutumia StringBuilder? Hivyo tumia StringBuilder unapohitaji fanya marekebisho mengi kwenye safu. Sivyo kweli wewe inapaswa kutumia StringBuilder ikiwa unaunganisha nyuzi kubwa au una miunganisho mingi, kama katika kitanzi. Mimi kwa ujumla tumia mjenzi wa kamba kwa kizuizi chochote cha msimbo ambacho kinaweza kusababisha muunganisho wa nyuzi tatu au zaidi.

Vivyo hivyo, ni kamba gani ya haraka au StringBuilder?

Vitu vya Kamba hazibadiliki, na vitu vya StringBuffer na StringBuilder zinaweza kubadilika. StringBuffer na StringBuilder zinafanana, lakini StringBuilder ni haraka na kupendekezwa zaidi ya StringBuffer kwa programu moja iliyounganishwa. Ikiwa usalama wa nyuzi unahitajika, basi StringBuffer inatumiwa.

Mpangaji programu angetumia kamba lini dhidi ya StringBuilder?

Wakati wa kutumia ipi: Kama a kamba itabaki bila kubadilika katika programu, basi tumia String darasa kitu kwa sababu a Kamba kitu hakibadiliki. Ikiwa a kamba inaweza mabadiliko (mfano: mantiki nyingi na shughuli za ujenzi wa kamba ) basi kutumia a StringBuilder ni chaguo bora.

Ilipendekeza: