Sommario:

StringBuilder può essere nullo?
StringBuilder può essere nullo?

Video: StringBuilder può essere nullo?

Video: StringBuilder può essere nullo?
Video: String vs StringBuilder vs StringBuffer | What is Immutability? | Java String Operations | Geekific 2024, Maggio
Anonim

vuoto significa che non ci sono caratteri nel StringBuilder . nullo significa che non c'è StringBuilder oggetto affatto. Una variabile è solo nullo se ha un tipo di riferimento (ad esempio String, StringBuilder , Set, come regola: tutti i tipi in maiuscolo) e non è ancora inizializzato o è stato impostato esplicitamente su nullo.

Allo stesso modo, come faccio a sapere se il mio StringBuilder è vuoto?

Il metodo della lunghezza di StringBuilder o la classe StringBuffer restituisce la lunghezza della sequenza di caratteri che ha attualmente. Come puoi vedere nell'esempio, a controlla se il StringBuilder è vuoto , ottieni la lunghezza di StringBuilder oggetto. Se la lunghezza è 0, è vuoto , altrimenti no.

Allo stesso modo, perché StringBuilder è più efficiente di StringBuffer? Di conseguenza, StringBuilder è più veloce di StringBuffer . StringBuffer è mutevole. Può cambiare in termini di lunghezza e contenuto. StringBuffer sono thread-safe, il che significa che hanno metodi sincronizzati per controllare l'accesso in modo che solo un thread possa accedere a StringBuffer codice sincronizzato dell'oggetto alla volta.

Di conseguenza, come si ripristina uno StringBuilder?

1) Cancella StringBuilder assegnando un nuovo oggetto

  1. public class JavaStringBufferClearEmptyExample {
  2. public static void main(String args) {
  3. StringBuilder sbStr = null;
  4. for(int i = 1; i <= 5; i++){
  5. //cancella il contenuto dall'iterazione precedente.
  6. sbStr = new StringBuilder();
  7. sbStr. append(i);
  8. Sistema. fuori. print(sbStr);

Come funziona StringBuilder internamente in Java?

StringBuilder gli oggetti sono come gli oggetti String, tranne per il fatto che possono essere modificati. Internamente , questi oggetti vengono trattati come array di lunghezza variabile che contengono una sequenza di caratteri. Ad esempio, se devi concatenare un numero elevato di stringhe, aggiungendo a StringBuilder oggetto è più efficiente.

Consigliato: