Chaîne replaceAll() vs Comparateur de replaceAll() (différences de Performances)

Question assez simple, mais ce qui est à venir à partir d'un C/C++ personne d'entrer dans les subtilités de Java.

Je comprends que je peux tirer jusqu'à jUnit et un peu de tests de performance de mon propre pour obtenir une réponse; mais je me demande simplement si c'est là-bas.

Sont là connu différence(s) entre la Chaîne.replaceAll() et de la Correspondance.replaceAll() (Sur un Matcher Objet créé à partir d'une expression régulière.Motif) en termes de performance?

Aussi, quels sont les API de haut niveau 'ish différences entre les deux? (L'immuabilité, la Manipulation des valeurs Null, la Manipulation des chaînes vides, faire le café, etc.)