gpt4 book ai didi

c# - string.Concat 在 .net 3.5 和 .net 4+ 上的工作方式不同

转载 作者:行者123 更新时间:2023-11-30 14:46:44 29 4
gpt4 key购买 nike

string.Concat(new[] { 'a', 'b', 'c' });

.net 4+ 上返回 "abc",在 .net 3.5 上返回 "System.Char[]"

这里有错误吗?

最佳答案

不同之处在于,在 .NET 4 中,他们添加了 String.Concat<T> Method (IEnumerable<T>) 给类重载。

在 .NET 4 之前,将值类型数组传递给 string.Concat()使数组被解释为一个简单的对象。 Concat()方法调用 ToString()在上面,中提琴,你得到 System.Char[] .

从 .NET 4 开始,任何 IEnumerable<T>传递给与任何其他重载都不匹配的方法的方法将获得新的重载。 IEnumerable<T> 中的每个元素(在本例中为 IEnumerable<char>)得到 ToString()呼吁它,每一个新的string值被连接起来。

关于c# - string.Concat 在 .net 3.5 和 .net 4+ 上的工作方式不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48018568/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com