以下是使用 C# 实现字符串相乘的代码:
```csharp
public class Solution {
public string Multiply(string num1, string num2) {
// 将输入的字符串反转方便逐位相乘
char[] charArray1 = num1.ToCharArray();
char[] charArray2 = num2.ToCharArray();
Array.Reverse(charArray1);
Array.Reverse(charArray2);
// 初始化结果数组,用于保存乘积的每一位数字
int[] result = new int[charArray1.Length + charArray2.Length];
// 逐位相乘
for (int i = 0; i < charArray1.Length; i++) {
for (int j = 0; j < charArray2.Length; j++) {
result[i + j] += (charArray1[i] - '0') * (charArray2[j] - '0');
// 处理进位
result[i + j + 1] += result[i + j] / 10;
result[i + j] %= 10;
}
}
// 去掉结果数组的前导零,并将数字转换成字符串
int index = result.Length - 1;
while (index > 0 && result[index] == 0) {
index--;
}
char[] resultCharArray = new char[index + 1];
for (int k = 0; k <= index; k++) {
resultCharArray[k] = (char)(result[index - k] + '0');
}
return new string(resultCharArray);
}
}
```
你可以在 C# 环境中使用这个 `Multiply` 方法来计算两个大数字符串的乘积,例如:
```csharp
string num1 = "123";
string num2 = "456";
Solution solution = new Solution();
string result = solution.Multiply(num1, num2);
Console.WriteLine(result); // 输出 "56088"
```
这个 C# 实现和之前的 Python 实现类似,都是使用循环嵌套实现大数乘法的过程。