如何将整数数组转换为逗号分隔的字符串

本文关键字:分隔 字符串 转换 整数 数组 | 更新日期: 2023-09-27 17:57:54

这是我的带有Ids 的整数数组

GoalIds{int[7]}
    [0]: 31935
    [1]: 31940
    [2]: 31976
    [3]: 31993
    [4]: 31994
    [5]: 31995
    [6]: 31990

我从这个代码得到上面的数组

Array GoalIds = FilteredEmpGoals.Select(x => x.GoalId).Distinct().ToArray();

我正在尝试将其转换为逗号分隔的字符串,如

31935, 31940, 31976, 31993, 31994, 31995, 31990

为了实现这一点,我尝试了

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

但它给了我CCD_ 1的结果。

请让我在这里更新我犯错误的地方。

参考:我看了这里,这个例子从那里开始运行得很好。

更新

参考:正如@paqogomez建议的

我试图将值存储在数组中,但可能是它没有正确处理值。现在,我确实更改了制作阵列的代码,如下所示

int[] GoalIds = FilteredEmpGoals.Select(x => x.GoalId).Distinct().ToArray();

现在它对我来说很好。

如何将整数数组转换为逗号分隔的字符串

在将GoalIds声明为Array类型时,您没有得到能够在String.Join中运行的迭代器。

尝试:

int[] GoalIds = FilteredEmpGoals.Select(x => x.GoalId).Distinct().ToArray();
var result = string.Join(",", GoalIds);

正如@JeppeStigNielsen在评论中指出的那样,这也是有效的,并消除了ToArray调用:

var GoalIds = FilteredEmpGoals.Select(x => x.GoalId).Distinct();

我在c#中运行了这段代码,它的工作很好,不知道有什么问题

int[] GoalIds = new int[7] { 31935,31940, 31976,31993, 31994, 31995, 31990};
var a = string.Join(",", GoalIds);
Console.WriteLine(a);
Console.ReadLine();