Innholdsfortegnelse:

Kan StringBuilder være null?
Kan StringBuilder være null?

Video: Kan StringBuilder være null?

Video: Kan StringBuilder være null?
Video: String vs StringBuilder vs StringBuffer | What is Immutability? | Java String Operations | Geekific 2024, November
Anonim

tom betyr at det ikke er noen tegn i StringBuilder . null betyr at det er nei StringBuilder objekt i det hele tatt. En variabel er bare null hvis den har en referansetype (for eksempel String, StringBuilder , Angi som en tommelfinger: alle typer store bokstaver), og den er ikke initialisert ennå eller er eksplisitt satt til null.

På samme måte, hvordan vet jeg om StringBuilder er tom?

Lengdemetoden til StringBuilder eller StringBuffer-klassen returnerer lengden på tegnsekvensen den har for øyeblikket. Som du kan se i eksempelet, til sjekk om de StringBuilder er tom , få lengden på StringBuilder gjenstand. Hvis lengden er 0, det er det tømme , ellers ikke.

På samme måte, hvorfor StringBuilder er mer effektiv enn StringBuffer? Som et resultat, StringBuilder er raskere enn StringBuffer . StringBuffer er foranderlig. Den kan endre seg med hensyn til lengde og innhold. StringBuffere er trådsikre, noe som betyr at de har synkroniserte metoder for å kontrollere tilgang slik at bare én tråd kan få tilgang til en StringBuffer objektets synkroniserte kode om gangen.

Følgelig, hvordan tilbakestiller du en StringBuilder?

1) Fjern StringBuilder ved å tilordne et nytt objekt

  1. public class JavaStringBufferClearEmptyExample {
  2. public static void main(String args) {
  3. StringBuilder sbStr = null;
  4. for(int i = 1; i <= 5; i++){
  5. //slett innholdet fra forrige iterasjon.
  6. sbStr = new StringBuilder();
  7. sbStr. vedlegg(i);
  8. System. ute. print(sbStr);

Hvordan fungerer StringBuilder internt i Java?

StringBuilder objekter er som strengobjekter, bortsett fra at de kan endres. Internt , behandles disse objektene som matriser med variabel lengde som inneholder en sekvens av tegn. For eksempel, hvis du trenger å sette sammen et stort antall strenger, legge til en StringBuilder objektet er mer effektivt.

Anbefalt: