Obsah:

Může mít StringBuilder hodnotu null?
Může mít StringBuilder hodnotu null?

Video: Může mít StringBuilder hodnotu null?

Video: Může mít StringBuilder hodnotu null?
Video: String vs StringBuilder vs StringBuffer | What is Immutability? | Java String Operations | Geekific 2024, Smět
Anonim

prázdný znamená, že v poli nejsou žádné znaky StringBuilder . nula znamená, že neexistuje StringBuilder objekt vůbec. Proměnná je pouze nula pokud má typ odkazu (například řetězec, StringBuilder , Nastavit jako miniaturu: všechny typy s velkými písmeny) a ještě není inicializován nebo byl explicitně nastaven na nula.

Podobně, jak zjistím, zda je můj StringBuilder prázdný?

Délková metoda StringBuilder nebo Třída StringBuffer vrací délku sekvence znaků, kterou aktuálně má. Jak můžete vidět na příkladu, do zkontrolovat jestli a StringBuilder je prázdný , získat délku StringBuilder objekt. Li délka je 0, to je prázdný , jinak ne.

Podobně, proč je StringBuilder efektivnější než StringBuffer? Jako výsledek, StringBuilder je rychlejší než StringBuffer . StringBuffer je proměnlivý. Může se měnit co do délky i obsahu. StringBuffery jsou bezpečné pro vlákna, což znamená, že mají synchronizované metody pro řízení přístupu, takže přístup může mít pouze jedno vlákno StringBuffer synchronizovaný kód objektu najednou.

Jak tedy resetujete StringBuilder?

1) Vymažte StringBuilder přiřazením nového objektu

  1. public class JavaStringBufferClearEmptyExample {
  2. public static void main(String args) {
  3. StringBuilder sbStr = null;
  4. for(int i = 1; i <= 5; i++){
  5. //vymaže obsah z předchozí iterace.
  6. sbStr = new StringBuilder();
  7. sbStr. append(i);
  8. Systém. ven. print(sbStr);

Jak funguje StringBuilder interně v Javě?

StringBuilder objekty jsou jako objekty typu String, kromě toho, že je lze upravit. Vnitřně , se s těmito objekty zachází jako s poli proměnné délky, která obsahují posloupnost znaků. Pokud například potřebujete zřetězit velký počet řetězců, přidejte k a StringBuilder objekt je efektivnější.

Doporučuje: