Quelle est la meilleure façon d'initialiser NSMutableString objet?

Si je prends une question suivante. Quelle est la meilleure façon d'initialiser NSMutableString Classe?
(Tous les cas, le retour à des moments inattendus... donc je vais supposer que l'initialisation comme suit:)

  1. Si je sais à l'avance la quantité de travail. ( attendue )
    NSMutableString *str1 = [NSMutableString stringWithString:@""];
    NSMutableString *str2 = [NSMutableString stringWithCapacity:0];
    NSMutableString *str3 = [NSMutableString stringWithCapacity:1000];
    NSMutableString *str4 = [NSMutableString string];
    
    for(int i = 0; i< 1000; i++)
    {
        //The following tasks.(Adding to the string to continue working.)
        [/*str1~str4*/ appendFormat:@"%d", i];
    }
  2. Si je ne sais pas à l'avance la quantité de travail. ( inattendue )
    NSMutableString *str1 = [NSMutableString stringWithString:@""];
    NSMutableString *str2 = [NSMutableString stringWithCapacity:0];
    NSMutableString *str3 = [NSMutableString stringWithCapacity:1000];
    NSMutableString *str4 = [NSMutableString string];
    
    for(int i = 0; i< /*a large of size(unpredictable)*/ ; i++)
    {
        //The following tasks.(Adding to the string to continue working.)
        [/*str1~str4*/ appendFormat:@"%d", i];
    }

Divisent principalement en deux lors de l'exécution de ces tâches, Quelle est la meilleure façon d'initialiser?

Je parfois, lorsque vous travaillez avec ces tâches est également source de confusion.

OriginalL'auteur bitmapdata.com | 2011-12-26