C#实现支持多参数的ConcatenateStrings字符串拼接方法求助
你可以通过C#的params关键字定义可变长度参数列表,实现支持任意数量字符串输入的拼接方法,不需要针对3、4、5个参数分别重载。
优化后实现代码
public static class ConcatenatingStrings { // 使用params关键字接收任意数量的字符串参数 public static string ConcatenateStrings(params string[] strs) { // 直接调用string.Concat内置方法处理字符串数组 return string.Concat(strs); } }
实现说明
params关键字修饰的数组参数允许调用方传入任意数量对应类型的参数,编译器会自动把传入的参数打包成数组传入方法,不管是3个、4个还是更多参数都能兼容,也支持直接传字符串数组作为入参。
你现有的3参数、4参数测试用例不需要做任何修改,直接就能运行通过,同时也支持后续更多参数的调用场景。
另外你原有实现里string.Concat(str1 + str2 + str3)属于冗余写法,str1 + str2 + str3本身已经完成了拼接,再包一层string.Concat没有实际作用,使用params配合string.Concat处理数组的写法更简洁高效。
内容的提问来源于stack exchange,提问作者Tanatoz
相关产品推荐
相关产品推荐

