在c#中使用字符串函数替换抛出异常

Ken*_*hou 4 c#

以下代码将导致异常:

string IDs = "";
IDs = IDs.Replace("", "");
Run Code Online (Sandbox Code Playgroud)

为什么?

wom*_*omp 8

它在string.Replace()文档中是正确的.如果您尝试将"oldValue"参数替换为空字符串,则会引发异常.

Exception                  Condition
ArgumentException          oldValue is the empty string (""). 
Run Code Online (Sandbox Code Playgroud)

如果你考虑一下,当你试图在另一个字符串中找到一个空字符串并用某些东西替换它时,你实际上想要做什么?从概念上讲,它没有意义.


小智 7

String cannot be of zero length.
Run Code Online (Sandbox Code Playgroud)

可能解释了原因.