[Note] Java: mesure la vitesse de concaténation de chaînes

introduction

Je me suis toujours souvenu qu'il était plus rapide de faire une concaténation de caractères de type String avec l'ajout de StringBuilder de mon supérieur sur le site précédent, mais le livre de référence que j'étudie maintenant le mentionne également. Je voulais donc m'entraîner à la vitesse réelle.

stringBuilderTest.java


public class StringBuilderTest {
    public static void main(String[] args) {

        String name = "";
        long start = System.currentTimeMillis();
        for(int i=1; i<=1000; i++){
            name += "tanaka, ";
        };
        long end = System.currentTimeMillis();
        System.out.println("+Mise en relation: "+(end - start)  + "ms");

        StringBuilder sb = new StringBuilder();
        long start2 = System.currentTimeMillis();
        for(int i=1; i<=400000; i++){
            sb.append("tanaka, ");
        };
        String name2 = sb.toString();
        long end2 = System.currentTimeMillis();
        System.out.println("StringBuilder.ajouter une concaténation: "+(end2 - start2)  + "ms");
    }
}

résultat.java


        +Mise en relation: 24ms
        StringBuilder.ajouter une concaténation: 27ms

Comme vous pouvez le voir d'après le nombre de fois où l'instruction for est tournée, il faut 24ms pour s'exécuter 1000 fois pour la concaténation avec +, et la concaténation d'ajout est exécutée 400000 fois avec 27ms. Même si vous ne l'exécutez que quelques fois, il convient de rappeler que le site précédent a également converti l'instruction for en unités de 10000.

Recommended Posts

[Note] Java: mesure la vitesse de concaténation de chaînes
[Java] Comparaison de vitesse de combinaison de chaînes
Point 63: Méfiez-vous des performances de la concaténation de chaînes
L'histoire de la comparaison de chaînes de bas niveau en Java
[Java] Obtenir la longueur de la chaîne de paire de substitution
[Java] La partie déroutante de String et StringBuilder
[Note] Java: recherche de chaînes de caractères
[Note] Java: enquête sur les chaînes de caractères
[Note] Java: vitesse de traitement de la liste par objectif
Veuillez noter la division (division) de java kotlin Int et Int
[Note] Sortie Java de la somme des éléments pairs et impairs
[Java] Essayez de modifier les éléments de la chaîne Json à l'aide de la bibliothèque
[Java] Supprimer les éléments de la liste
Diverses méthodes de la classe Java String
[Édition Java] Histoire de la sérialisation
Remarque sur le chemin de request.getRequestDispatcher
Diverses méthodes de la classe String
[Note] Gestion des points décimaux Java
[Java] Comparaison correcte du type String
J'ai lu la source de String
L'origine des expressions Java lambda
Gestion de la virgule flottante java Lors de la lecture du livre de référence [Note]
L'histoire de ne pas connaître le comportement de String en passant par Java
J'ai essayé de résumer les méthodes de Java String et StringBuilder
Comment vérifier le contenu de la chaîne de caractères java de longueur fixe
Obtenez le résultat de POST en Java
Chaîne Java
Vérifiez le contenu du magasin de certificats Java
Examiner l'utilisation de la mémoire des éléments Java
Mémo: [Java] Vérifiez le contenu du répertoire
Comparer les éléments d'un tableau (Java)
Connaissance de base de la rédaction de notes de développement Java
[jour: 5] J'ai résumé les bases de Java
Quelles sont les fonctionnalités mises à jour de Java 13
Mesurez facilement la taille des objets Java
Retour sur les bases de Java
[Java] Comment accéder au début d'une chaîne spécifique à l'aide de la classe String
Sortie du livre "Introduction à Java"
L'histoire de l'écriture de Java dans Emacs
[Java] Vérifiez le nombre d'occurrences de caractères
[Java] Vérifiez si la chaîne de caractères est composée uniquement de blancs (= Vierge)
[Java] [Spring] Tester le comportement de l'enregistreur
Gestion de la virgule flottante java Lors de la lecture du livre de référence [Note]
[Java] Comment obtenir facilement la plus longue chaîne de caractères d'ArrayList à l'aide de stream
String # split (String regex, int limit) Remarque sur les spécifications de fonctionnement du deuxième argument
[Java] Gestion des Java Beans dans la chaîne de méthodes
JAVA: jar, aar, affichez le contenu du fichier
L'histoire de la fabrication d'un Othello ordinaire à Java
[Android] [Java] Gérer l'état de CheckBox de ListView
A propos de l'ordre de description des propriétés système Java
À propos de l'idée des classes anonymes en Java
L'ordre des modificateurs de méthode Java est fixe
Comparez la vitesse de l'instruction for et de l'instruction for étendue.
[Java] Accéder à l'URL signée de s3 (version signée 2)
L'histoire de l'apprentissage de Java dans la première programmation
Mesurer la taille d'un dossier avec Java
J'ai comparé les caractéristiques de Java et .NET
[Java] Faites attention au type de clé de la carte
Ressentez le passage du temps même à Java
Calculer le score de similarité des chaînes de caractères avec JAVA