これは宿題の質問ではありません。
次の 2 つのメソッドの正確な違いと呼び出し元での使用方法を説明するとしたら、どうすればよいでしょうか?
方法 1:
public void WriteSpace(int numSpaces) {
if (numSpaces <= 0) return;
for (var x = 0; x < numSpaces; x++) {
Response.Write(" ");
}
}
方法 2:
public String WriteSpaceReturn(int numSpaces) {
var space = "";
if (numSpaces <= 0) return space;
for (var x = 0; x < numSpaces; x++) {
space += " ";
}
return space;
}
発信者:
WriteSpace(4); //1
Response.Write(WriteSpaceReturn(4)); //2
最終結果はどちらも同じです。したがって、最初のメソッドは呼び出し元に値を返さないのに対し、2 番目のメソッドは値を返さないことは明らかですが、それ以上に、これらを他にどのように説明すればよいでしょうか?
最初と2番目の方法の原子性に違いはありますか? 範囲?ブロッキング?最初のメソッドがメソッド内に出力を書き込むのに対し、2 番目のメソッドは呼び出し元にそれをさせるという事実の名前はありますか? これらが大量のデータを書き込んでいる場合、どちらが優先されますか? Response.Write
最初は文字ごとに呼び出しを行っているので、遅くなると思いますか?