Is StringBuilder sneller dan aaneenschakeling van tekenreeksen?
Is StringBuilder sneller dan aaneenschakeling van tekenreeksen?

Video: Is StringBuilder sneller dan aaneenschakeling van tekenreeksen?

Video: Is StringBuilder sneller dan aaneenschakeling van tekenreeksen?
Video: StringBuffer and StringBuilder in Java 2024, April
Anonim

1) De Snaar object is onveranderlijk in Java, maar StringBuffer en StringBuilder zijn veranderlijke objecten. 2) StringBuffer wordt gesynchroniseerd terwijl: StringBuilder is niet wat maakt StringBuilder sneller dan StringBuffer. 3) Aaneenschakeling operator "+" is intern geïmplementeerd met behulp van StringBuffer of StringBuilder.

Evenzo kan men zich afvragen, is het formaat van de tekenreeks sneller dan aaneenschakeling?

De belangrijkste reden is dat Snaar . formaat () kan gemakkelijker worden gelokaliseerd met tekst die is geladen uit bronbestanden, terwijl: aaneenschakeling kan niet worden gelokaliseerd zonder een nieuw uitvoerbaar bestand te produceren met verschillende code voor elke taal. De timingresultaten zijn als volgt: Aaneenschakeling = 265 milliseconde.

Bovendien, wanneer moet je StringBuilder niet gebruiken? Dus gebruik StringBuilder wanneer je moet doen veel aanpassingen aan de string. Niet echt jij zou StringBuilder moeten gebruiken als je grote strings samenvoegt of als je veel aaneenschakelingen hebt, zoals in een lus. Ik meestal gebruik stringbuilder voor elk codeblok dat zou resulteren in de aaneenschakeling van drie of meer strings.

Evenzo, wat is snellere string of StringBuilder?

Objecten van Snaar zijn onveranderlijk, en objecten van StringBuffer en StringBuilder zijn veranderlijk. StringBuffer en StringBuilder lijken op elkaar, maar StringBuilder is sneller en heeft de voorkeur boven StringBuffer voor programma's met één schroefdraad. Als draadveiligheid nodig is, wordt StringBuffer gebruikt.

Wanneer zou een programmeur string versus StringBuilder gebruiken?

Wanneer? gebruik maken van welke: Als een snaar gedurende het hele programma constant blijft, dan gebruik String class-object omdat a Snaar object is onveranderlijk. Als een string kan veranderen (voorbeeld: veel logica en werkzaamheden bij de bouw van de snaar ) dan gebruik makend van een StringBuilder is de beste optie.

Aanbevolen: