字符串的连接

塔纳托兹

我的任务是实现返回 string.Contact(str1, str2, str3) 的方法,但在我观察到的测试用例列表中,其中一些具有超过 3 个输入参数(实际上是 4 和 5)。我不知道我应该写什么算法(因为在 msdn 中我没有看到任何类似的东西)。感谢所有帮助。

我的样品:

   public static string ConcatenateStrings(string str1, string str2, string str3)
    {
        return string.Concat(str1 + str2 + str3);
    }

测试用例代码:

 [TestCase("", "", "", ExpectedResult = "")]
    [TestCase("a", "b", "c", ExpectedResult = "abc")]
    [TestCase("abc", "bcd", "cde", ExpectedResult = "abcbcdcde")]
    public string ConcatenateStrings_ThreeParameters_ParametersAreValid_ReturnsResult(string str1, string str2, string str3)
    {
        // Act
        return ConcatenatingStrings.ConcatenateStrings(str1, str2, str3);
    }

    [TestCase("", "", "", "", ExpectedResult = "")]
    [TestCase("a", "b", "c", "d", ExpectedResult = "abcd")]
    [TestCase("abc", "bcd", "cde", "def", ExpectedResult = "abcbcdcdedef")]
    public string ConcatenateStrings_ThreeParameters_ParametersAreValid_ReturnsResult(string str1, string str2, string str3, string str4)
    {
        // Act
        return ConcatenatingStrings.ConcatenateStrings(str1, str2, str3, str4);
    }

测试用例的结果:

在此处输入图片说明

马修C

使用params关键字,您可以将数组传递到您的方法中。

参考https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/params

public static string ConcatenateStrings(params string[] str)
{
    string concat;

    foreach(string s in str)
    {
        concat = string.Concat(concat, s);
    }

    return concat;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章