Ni ipi bora StringBuffer au StringBuilder?
Ni ipi bora StringBuffer au StringBuilder?

Video: Ni ipi bora StringBuffer au StringBuilder?

Video: Ni ipi bora StringBuffer au StringBuilder?
Video: 19. Java-da Map 2024, Mei
Anonim

Kamba haiwezi kubadilika wakati StringBuffer na StringBuider ni madarasa yanayobadilika. StringBuffer ni thread salama na synchronized ambapo StringBuilder sio, ndio maana StringBuilder ni kasi zaidi kuliko StringBuffer . String concat + operator anatumia ndani StringBuffer au StringBuilder darasa.

Sambamba, ni ipi bora StringBuffer au StringBuilder?

Matokeo yake, StringBuilder ni kasi kuliko StringBuffer . StringBuffer inaweza kubadilika. Inaweza kubadilika kulingana na urefu na yaliyomo. StringBuffers ziko salama kwa nyuzi, ikimaanisha kuwa zina njia zilizosawazishwa za kudhibiti ufikiaji ili tu moja thread inaweza kufikia a StringBuffer msimbo uliosawazishwa wa kitu kwa wakati mmoja.

Vile vile, kwa nini StringBuffer ni polepole kuliko StringBuilder? Kitu kilichoundwa kupitia StringBuffer huhifadhiwa kwenye lundo. StringBuffer ina mbinu sawa na StringBuilder , lakini kila njia ndani StringBuffer inasawazishwa yaani StringBuffer thread iko salama. Hivyo StringBuilder ni kasi zaidi kuliko ya StringBuffer wakati wa kupiga njia sawa za kila darasa.

Kwa hivyo, ni tofauti gani kati ya StringBuffer na StringBuilder?

StringBuilder . StringBuilder ni sawa na StringBuffer , yaani huhifadhi kitu kwenye lundo na pia inaweza kurekebishwa. Kuu tofauti kati ya ya StringBuffer na StringBuilder ni kwamba StringBuilder si thread salama. StringBuilder ni haraka kwani sio salama kwa uzi.

Ninapaswa kutumia StringBuffer lini?

Ikiwa thamani ya Kitu inaweza kubadilika na itafikiwa tu kutoka kwa uzi mmoja, kutumia StringBuilder kwa sababu StringBuilder haijasawazishwa. Iwapo thamani ya Kitu inaweza kubadilika, na itarekebishwa na nyuzi nyingi, kutumia a StringBuffer kwa sababu StringBuffer imelandanishwa.

Ilipendekeza: