首页 > 解决方案 > 将数字列表 1、2、3、4 转换为字母列表 A、B、C、D

问题描述

我有一个List<int>包含增量整数,如 1,2,3,4 。
如何转换“列表”。我正在寻找将数字更改为“对应”字母的算法或代码。

 List<string>

从:1、2、3、4、5

至:A、B、C、D、E.... AA、AB 等

将增量从 1、2、3 更改为 A、B、C

标签: c#

解决方案


你可以做一个简单的数学运算。IE:

void Main()
{
    var intList = Enumerable.Range(1, 1000);
    var alphaList = intList.Select(x => ToAlpha(x));
    foreach (var x in alphaList)
    {
        Console.WriteLine(x);
    }
}

private static string ToAlpha(int i)
{
    string result = "";
    do
    {
        result = (char)((i-1) % 26 + 'A') + result;
        i = (i-1)/26;
    } while (i > 0);
    return result;
}

推荐阅读