Inhoudsopgave:

Kan StringBuilder null zijn?
Kan StringBuilder null zijn?

Video: Kan StringBuilder null zijn?

Video: Kan StringBuilder null zijn?
Video: String vs StringBuilder vs StringBuffer | What is Immutability? | Java String Operations | Geekific 2024, Mei
Anonim

leeg betekent, dat er geen tekens in de StringBuilder . nul betekent dat er geen StringBuilder voorwerp helemaal niet. Een variabele is alleen nul als het een referentietype heeft (bijvoorbeeld String, StringBuilder , Stel als vuistregel in: alle typen met een hoofdletter) en het is nog niet geïnitialiseerd of is expliciet ingesteld op nul.

Evenzo, hoe weet ik of mijn StringBuilder leeg is?

De lengtemethode van de StringBuilder of StringBuffer klasse retourneert de lengte van de reeks tekens die het momenteel heeft. Zoals u in het voorbeeld kunt zien, moet u controleer of de StringBuilder is leeg , haal de lengte van de StringBuilder object. Indien de lengte is 0, het is leeg , anders niet.

Evenzo, waarom is StringBuilder efficiënter dan StringBuffer? Als resultaat, StringBuilder is sneller dan StringBuffer . StringBuffer is veranderlijk. Het kan veranderen in lengte en inhoud. StringBuffers zijn thread-safe, wat betekent dat ze gesynchroniseerde methoden hebben om de toegang te regelen, zodat slechts één thread toegang heeft tot een StringBuffer de gesynchroniseerde code van het object tegelijk.

Dienovereenkomstig, hoe reset je een StringBuilder?

1) Wis StringBuilder door een nieuw object toe te wijzen

  1. openbare klasse JavaStringBufferClearEmptyExample {
  2. public static void main(String args) {
  3. StringBuilder sbStr = null;
  4. for(int i = 1; ik <= 5; i++){
  5. // wis de inhoud van de vorige iteratie.
  6. sbStr = nieuwe StringBuilder();
  7. sbStr. toevoegen (ik);
  8. Systeem. uit. print(sbStr);

Hoe werkt StringBuilder intern in Java?

StringBuilder objecten zijn als String-objecten, behalve dat ze kunnen worden gewijzigd. intern , worden deze objecten behandeld als arrays van variabele lengte die een reeks tekens bevatten. Als u bijvoorbeeld een groot aantal tekenreeksen moet samenvoegen, voegt u toe aan a StringBuilder object is efficiënter.

Aanbevolen: