Je StringBuilder rýchlejší ako zreťazenie reťazcov?
Je StringBuilder rýchlejší ako zreťazenie reťazcov?

Video: Je StringBuilder rýchlejší ako zreťazenie reťazcov?

Video: Je StringBuilder rýchlejší ako zreťazenie reťazcov?
Video: DO NOT Concatenate Strings Like This In Python, There's A Better Way. 2024, November
Anonim

1) Reťazec objekt je nemenný v jazyku Java, ale StringBuffer a StringBuilder sú premenlivé objekty. 2) StringBuffer sa synchronizuje StringBuilder nie je to, čo robí StringBuilder rýchlejší ako StringBuffer. 3) Reťazenie operátor "+" je interne implementovaný buď pomocou StringBuffer alebo StringBuilder.

Podobne sa možno pýtať, je formát reťazca rýchlejší ako zreťazenie?

Hlavným dôvodom je to Reťazec . formát () možno ľahšie lokalizovať pomocou textu načítaného zo zdrojových súborov, zatiaľ čo zreťazenie nie je možné lokalizovať bez vytvorenia nového spustiteľného súboru s iným kódom pre každý jazyk. Výsledky časovania sú nasledovné: Reťazenie = 265 milisekúnd.

Okrem toho, kedy by ste nemali používať StringBuilder? Takže použite StringBuilder keď potrebujete robiť veľa úprav na strune. nie naozaj ty by mal používať StringBuilder ak spájate veľké reťazce alebo máte veľa reťazení, napríklad v slučke. Ja všeobecne použite nástroj na tvorbu reťazcov pre každý blok kódu, ktorý by viedol k zreťazeniu troch alebo viacerých reťazcov.

Podobne, ktorý je rýchlejší reťazec alebo StringBuilder?

Objekty z Reťazec sú nemenné a objekty StringBuffer a StringBuilder sú premenlivé. StringBuffer a StringBuilder sú podobné, ale StringBuilder je rýchlejšie a preferovaný pred StringBuffer pre jednovláknový program. Ak je potrebná bezpečnosť vlákna, použije sa StringBuffer.

Kedy by programátor použil reťazec vs StringBuilder?

Kedy použitie ktorý z nich: Ak a reťazec potom zostane konštantná počas celého programu použite String objekt triedy, pretože a Reťazec objekt je nemenný. Ak strunová plechovka zmena (príklad: veľa logiky a operácie pri výstavbe reťazec ) potom použitím a StringBuilder je najlepšia možnosť.

Odporúča: