.net out ref
public void ChangeStringBuilder1(StringBuilder str)
{
str.Append("yes");
}
public void ChangeStringBuilder2(ref StringBuilder str)
{
str.Append("yes");
}
public void ChangeStringStr1(string str)
{
str += "yes";
}
public void ChangeStringStr1(ref string str)
{
str += "yes";
}
public void ChangeStringStr2(out string str)
{
string strTemp = "ok";
str = strTemp + "yes";
}
static void Main(string[] args)
{
StringBuilder strBuilder1 = new StringBuilder("str1");
StringBuilder strBuilder2 = new StringBuilder("str2");
new Program().ChangeStringBuilder1(strBuilder1);
new Program().ChangeStringBuilder1(strBuilder2);
Console.WriteLine(strBuilder1.ToString());
Console.WriteLine(strBuilder2.ToString());
string str1 = "str1";
string str2 = "str2";
string str3 = "str3";
new Program().ChangeStringStr1(str1);
new Program().ChangeStringStr1(ref str3);
new Program().ChangeStringStr2(out str2);
Console.WriteLine(str1.ToString());
Console.WriteLine(str2.ToString());
Console.WriteLine(str3.ToString());
}
结果:
str1yes
str2yes
str1
okyes
str3yes
Press any key to continue . . .
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步