使用LINQ将整数范围转换为字符串列表

本文关键字:字符串 列表 转换 范围 LINQ 整数 使用 | 更新日期: 2023-09-27 18:12:54

如何使用LINQ将整数范围转换为字符串列表?

例如,对于整数1-12的范围,预期的结果将是"01","02","03",…"12"。

我提出的方法是增量地构建List<string>。有没有更简洁的方法来得到我想要的结果?

var numbers = Enumerable.Range(1, 12);
var numberList = new List<string>();
foreach (var item in numbers)
{
    string mth = (item.ToString().Length == 1)
        ? "0" + item.ToString()
        : item.ToString();
    numberList.Add(mth);
}

使用LINQ将整数范围转换为字符串列表

ToString可以为您做这些:

Enumerable.Range(1, 12).Select(n => n.ToString("00"))

可能使用string.Join()Where():

var numers = numbers
   .Where(n => n > 5)
   .Select(n => String.Format("'"{0}'"", n));
var str = String.Join(numbers, ",")
var numberList = numbers.Select(x => x.ToString());