我可以用一行代码读取一个数组吗?

发布于 2024-09-18 11:48:40 字数 150 浏览 4 评论 0原文

假设我有一个数组 int[] arr = {1,2,3,4}

我想将其转换为字符串。 我希望结果像这个字符串 a = "1,2,3,4";

那么我可以用“string a = arr ....”来做这件事,而不是写一个for循环吗?

谢谢

Supposed i have an array int[] arr = {1,2,3,4}

I want to convert it into a string.
The result i want it to be like this string a = "1,2,3,4";

so can i have something "string a = arr...." to do it, instead of writing a for loop??

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

寒冷纷飞旳雪 2024-09-25 11:48:40

从 .NET 4 开始,您可以简单地执行以下操作:

var result = string.Join( ",", arr );

在早期版本中,

var result = string.Join( ",", arr.Select( a => a.ToString() ).ToArray() );

As of .NET 4, you can simply do:

var result = string.Join( ",", arr );

In earlier versions,

var result = string.Join( ",", arr.Select( a => a.ToString() ).ToArray() );
∝单色的世界 2024-09-25 11:48:40

您可以使用 String.Join:

int[] arr = new [] { 4, 5, 6, 7 };
string joined = String.Join(",", arr);

请参阅 http://msdn.microsoft.com/ en-us/library/57a79xd0.aspx 了解更多信息。

You can use String.Join:

int[] arr = new [] { 4, 5, 6, 7 };
string joined = String.Join(",", arr);

See http://msdn.microsoft.com/en-us/library/57a79xd0.aspx for more info.

简单 2024-09-25 11:48:40
string result = string.Join(", ", arr.Select(item => item.ToString()).ToArray());
string result = string.Join(", ", arr.Select(item => item.ToString()).ToArray());
望笑 2024-09-25 11:48:40

如果您无法使用 .net 4(我还不能,因为我们的客户没有部署它),您可以使用扩展方法。这将适用于所有具有适当实现的 .ToString() 覆盖的 IEnumerable's。您还可以选择您想要的分隔符类型。

完成以下操作后,您只需执行 string s = myenumerable.Seperated(",");

public static class EnumerableExtender
    {
        public static string Separated<T>(this IEnumerable<T> l, string separator)
        {
            var sb = new StringBuilder();
            var first = true;
            foreach (var o in l)
            {
                if (first) first = false; else sb.Append(separator);
                sb.Append(o.ToString());
            }
            return sb.ToString();
        }
    } 

If you can't use .net 4 (I can't yet as our customers don't deploy it), you can use an extension method. This will work then work for all IEnumerable<T>'swith appropriately implemented .ToString() overrides. You can also pick what sort of seperator you want.

Once you have the below, you can just do string s = myenumerable.Seperated(",");

public static class EnumerableExtender
    {
        public static string Separated<T>(this IEnumerable<T> l, string separator)
        {
            var sb = new StringBuilder();
            var first = true;
            foreach (var o in l)
            {
                if (first) first = false; else sb.Append(separator);
                sb.Append(o.ToString());
            }
            return sb.ToString();
        }
    } 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文