V tomto príklade sa naučíme vyčistiť vyrovnávaciu pamäť reťazcov pomocou metód delete () a setLength () a vytvorenia nového objektu StringBuffer v Jave.
Príklad 1: Program Java na vymazanie pomocou nástroja StringBuffer pomocou nástroja delete ()
class Main ( public static void main(String() args) ( // create a string buffer StringBuffer str = new StringBuffer(); // add string to string buffer str.append("Java"); str.append(" is"); str.append(" popular."); System.out.println("StringBuffer: " + str); // clear the string // using delete() str.delete(0, str.length()); System.out.println("Updated StringBuffer: " + str); ) )
Výkon
StringBuffer: Java je populárna. Aktualizovaný StringBuffer:
Vo vyššie uvedenom príklade sme na vyčistenie reťazcovej medzipamäte použili delete()
metódu StringBuffer
triedy.
Tu delete()
metóda odstráni všetky znaky v rámci zadaných čísel indexu.
Príklad 2: Vymažte StringBuffer pomocou setLength ()
class Main ( public static void main(String() args) ( // create a string buffer StringBuffer str = new StringBuffer(); // add string to string buffer str.append("Java"); str.append(" is"); str.append(" awesome."); System.out.println("StringBuffer: " + str); // clear the string // using setLength() str.setLength(0); System.out.println("Updated StringBuffer: " + str); ) )
Výkon
StringBuffer: Java je úžasná. Aktualizovaný StringBuffer
Tu setLength()
metóda mení prítomné znakové sekvencie StringBuffer
na novú postupnosť znakov. A nastavte dĺžku novej postupnosti znakov na 0.
Preto je staršia postupnosť znakov zhromažďovaná odpadkami.
Poznámka : setLength()
Metóda úplne ignoruje postupnosť znakov prítomných vo vyrovnávacej pamäti reťazca. Avšak, delete()
spôsob pristupuje postupnosť znakov a odstráni ju. Preto setLength()
je rýchlejší ako delete()
.
Príklad 3: Vymažte StringBuffer vytvorením nového objektu
class Main ( public static void main(String() args) ( // create a string buffer StringBuffer str = new StringBuffer(); // add string to string buffer str.append("Java"); str.append(" is"); str.append(" awesome."); System.out.println("StringBuffer: " + str); // clear the string // using new // here new object is created and assigned to str str = new StringBuffer(); System.out.println("Updated StringBuffer: " + str); ) )
Výkon
StringBuffer: Java je úžasná. Aktualizovaný StringBuffer:
Tu new StringBuffer()
vytvorí nový objekt medzipamäte reťazca a priradí predchádzajúcu premennú k novým objektom. V takom prípade bude predchádzajúci objekt tam. Nebude však prístupný, takže sa bude zbierať odpadky.
Pretože zakaždým namiesto vymazania predchádzajúcej medzipamäte reťazca sa vytvorí nová medzipamäť reťazca. Je to teda z hľadiska výkonu menej efektívne.