我们知道+=
运营商会这样做
x += y
相当于
x = x + y
但是有没有一个运营商这样做
x = y + x
整数x + y = y + x
答案 0 :(得分:3)
实现相同结果的另一种方法是
x.Insert(0, y);
答案 1 :(得分:1)
您尝试执行的操作没有运算符,但您也可以使用扩展方法:
public static string AddBefore(this string value, string before)
{
return before + value;
}
然后显然称之为:
x = x.AddBefore(y);
答案 2 :(得分:1)
我建议你应该大力输入一个速记x = y + x
,因为它是清晰且易于维护的代码。如果你使用神秘的含义重载操作符,那么代码就变得更加难以理解。
+ =具有明确且定义明确的含义,结果反映了参数的顺序(x += y
使字符串保持x,y的顺序)。有一个像x ?= y
这样产生y的语句,x将是一个非常混乱的构造恕我直言。
你可以编写一个像Prepend()这样的扩展方法来使含义更清晰,但这种方法比原始表达式更有用,所以可能毫无意义。
答案 3 :(得分:0)
不,没有。您可以使用+=
,结果应该相同,因为x + y == y + x
。
对于字符串,请考虑Concat
,Format
方法或StringBuilder
。
答案 4 :(得分:0)
使用 StringBuilder.Insert方法(Int32,布尔)