これは私のコードです:printOnまたはStoreOnを使用して文字列に変換した22が、なぜ整数のように追加されるのはなぜですか?
x := 22 storeString.
y := x + x.
Transcript show: y.
予想される出力:2222 実際の出力:44
私はXに割り当てられた22に送られたstoreString
メッセージは、文字列値であることになるだろうと思いましたxに格納されます。
だから、私は小さな話ではかなり新しいと思った。多分それは操作の順序ですか?私はprintOn
の代わりstoreOn
を使用する場合、
x := (22 storeString).
y := x + x.
Transcript show: y.
同じ結果と同じ:だから私はこれを試してみました。これはおそらく、1日目のチュートリアルに続くタイプの質問です。しかし、何が起こっているのですか?連結演算子(、)について知っていることに注意してください。しかし、私はまだこのように2つの文字列をどのように追加できるのでしょうか?文字列から整数への暗黙の変換が+
の一部として起こっていますか?
今私には理にかなって:文字列の連結は、あなたが望むものである場合
ので、あなたは右のメッセージを送信する必要があります。フルーツループの色つきのおもちゃは、デフォルトのVM上では見えず(インスタンスが動作しています)、これ以上シークにはなりません(プロとバニラのように見えます)が、内部イメージビットは残っています。 –