Les objets
StringBuffer sont généralement sûrs à utiliser dans des environnements multithread, où plusieurs threads peuvent essayer d'accéder au même objet StringBuffer en même temps. StringBuilder est un remplacement thread-safe de la classe StringBuffer, qui fonctionne beaucoup plus rapidement car elle n'a pas de méthodes synchronisées>. Si nous effectuons de nombreuses opérations sur les chaînes dans un seul thread, l'utilisation de cette classe peut améliorer les performances.
public class CompareBuilderwithBufferTest { public static void main(String []args) { <strong> </strong> stringBufferTest(); stringBuilderTest();<strong> </strong> } public static void stringBufferTest() { long startTime = System.nanoTime(); StringBuffer sb = new StringBuffer(); for (int i=0; i < 1000; i++) { sb.append((char) 'a'); } System.out.println("StringBuffer test: " + (System.nanoTime() - startTime)); } public static void stringBuilderTest()<strong> </strong>{ long startTime = System.nanoTime(); StringBuilder sb = new StringBuilder(); for (int i=0; i < 1000; i++) { sb.append((char) 'a'); } System.out.println("StringBuilder test: " + (System.nanoTime() - startTime)); } }
StringBuffer test: 192595 StringBuilder test: 85733
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!