私はObjective-CにやってくるJavaの男です。 Javaでは、あなたはの線に沿って何かをしなければならないだろう文字列に変数を追加する:変数に文字列を追加する
someString = "This string is equal to " + someNumber + ".";
でも、私はObjective-Cでそれを行う方法を見つけ出すことはできません。文字列の中央に追加したいのはNSMutableString
です。これをどうやって行うのですか?
は、私が試してみた:
NSString *someText = @"Lorem ipsum " + someMutableString;
NSString *someText = @"Lorem ipsum " + [someMutableString stringForm];
といくつか他のものは、いずれも動作するようです。また、+
を,
と交換しました。
メモリ管理が乱雑です。これはあなたが解放する必要がある 'alloc'によって作成されたオリジナルの文字列ですが、あなたはそれを捨てて(それを漏らして)解放してはならない' stringByAppendingString: 'の結果で置き換えています。 – Chuck
私はここでメモリ管理と混同されるかもしれないが、同じメモリブロックを指している私の2番目のステートメントではないことを認識しています。既存の値と追加された文字列に値を再割り当てしますか? – Trevor
いいえ、2つの異なる場所にある2つの異なるオブジェクトです。 Plain NSStringは値を変更できないので、 'stringByAppendingString:'は、元の文字列の値に付加された値を加えた新しい文字列を返します。 – Chuck