在c#中,如何构建从A到ZZ的数组,类似于excel对列进行排序的方式

2023-11-26

我正在寻找可以生成第一项是数组的代码A, then B, then C。 。 。后Z然后它会去AA, then AB then AC。 。 。一直到ZZ.

在 C# 中执行此操作的最佳方法是什么?


其中一种方法是:

IEnumerable<string> generate()
{
    for (char c = 'A'; c <= 'Z'; c++)
        yield return new string(c, 1);
    for (char c = 'A'; c <= 'Z'; c++)
        for (char d = 'A'; d <= 'Z'; d++)
            yield return new string(new[] { c, d });
}

Edit:
你实际上可以产生“无限”序列(以最大longvalue),代码稍微复杂一些:

string toBase26(long i)
{
    if (i == 0) return ""; i--;
    return toBase26(i / 26) + (char)('A' + i % 26);
}

IEnumerable<string> generate()
{
    long n = 0;
    while (true) yield return toBase26(++n);
}

这个是这样的:A,B,...,Z,AA,AB,...,ZZ,AAA,AAB,...等:

foreach (var s in generate().Take(200)) Console.WriteLine(s);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在c#中,如何构建从A到ZZ的数组,类似于excel对列进行排序的方式 的相关文章

  • ROWNUM 的 OracleType 是什么

    我试图参数化所有现有的 sql 但以下代码给了我一个问题 command CommandText String Format SELECT FROM 0 WHERE ROWNUM lt maxRecords command CommandT
  • 创建 DirectoryEntry 实例以供测试使用

    我正在尝试创建 DirectoryEntry 的实例 以便可以使用它来测试将传递 DirectoryEntry 的一些代码 然而 尽管进行了很多尝试 我还是找不到实例化 DE 并初始化它的 PropertyCollection 的方法 我有
  • 如何在没有 Control.Invoke() 的情况下从后台线程修改控件属性

    最近 我们遇到了一些旧版 WinForms 应用程序 我们需要更新一些新功能 在专家测试该应用程序时 发现一些旧功能被破坏 无效的跨线程操作 现在 在您认为我是新手之前 我确实有一些 Windows 窗体应用程序的经验 我不是专家 但我认为
  • 嵌入式系统中的malloc [重复]

    这个问题在这里已经有答案了 我正在使用嵌入式系统 该应用程序在 AT91SAMxxxx 和 cortex m3 lpc17xxx 上运行 我正在研究动态内存分配 因为它会极大地改变应用程序的外观 并给我更多的力量 我认为我唯一真正的路线是为
  • Cygwin 下使用 CMake 编译库

    我一直在尝试使用 CMake 来编译 TinyXML 作为一种迷你项目 尝试学习 CMake 作为补充 我试图将其编译成动态库并自行安装 以便它可以工作 到目前为止 我已经设法编译和安装它 但它编译成 dll 和 dll a 让它工作的唯一
  • 如何在我的应用程序中使用 Windows Key

    Like Windows Key E Opens a new Explorer Window And Windows Key R Displays the Run command 如何在应用程序的 KeyDown 事件中使用 Windows
  • 为什么禁止在 constexpr 函数中使用 goto?

    C 14 对你能做什么和不能做什么有规则constexpr功能 其中一些 没有asm 没有静态变量 看起来相当合理 但标准也不允许goto in constexpr功能 即使它允许其他控制流机制 这种区别背后的原因是什么 我以为我们已经过去
  • 写入和读取文本文件 - C# Windows 通用平台应用程序 Windows 10

    有用 但在显示任何内容之前 您必须在文本框中输入内容 我想那是因为我使用了 TextChanged 事件处理程序 如果我希望它在没有用户交互的情况下显示文本文件的内容 我应该使用哪个事件处理程序 因此 我想在按下按钮时将一些数据写入 C W
  • Windows 窗体不会在调试模式下显示

    我最近升级到 VS 2012 我有一组在 VS 2010 中编码的 UI 测试 我试图在 VS 2012 中启动它们 我有一个 Windows 窗体 在开始时显示使用 AssemblyInitialize 属性运行测试 我使用此表单允许用户
  • 编译的表达式树会泄漏吗?

    根据我的理解 JIT 代码在程序运行时永远不会从内存中释放 这是否意味着重复调用 Compile 表达式树上会泄漏内存吗 这意味着仅在静态构造函数中编译表达式树或以其他方式缓存它们 这可能不那么简单 正确的 他们可能是GCed Lambda
  • 如何在 Team Foundation 上强制发表有意义的签入评论?

    我有一个开发团队有一个坏习惯 他们写道poor签入评论 当我们必须在团队基础上查看文件的历史记录时 这使得它成为一场噩梦 我已经启用了变更集评论政策 这样他们甚至可以在签到时留下评论 否则他们不会 我们就团队的工作质量进行了一些讨论 他们很
  • 使用 LINQ 查找列表中特定类型的第一个元素

    使用 LINQ 和 C 在元素列表中查找特定类型的第一个项目的最短表示法是什么 var first yourCollection OfType
  • 像“1$”这样的位置参数如何与 printf() 一起使用?

    By man I find printf d width num and printf 2 1 d width num 是等价的 但在我看来 第二种风格应该与以下相同 printf d num width 然而通过测试似乎man是对的 为什
  • 更改窗口的内容 (WPF)

    我创建了一个简单的 WPF 应用程序 它有两个 Windows 用户在第一个窗口中填写一些信息 然后单击 确定 这会将他们带到第二个窗口 这工作正常 但我试图将两个窗口合并到一个窗口中 这样只是内容发生了变化 我设法找到了这个更改窗口内容时
  • 检查 url 是否指向文件或页面

    我们需要以下内容 如果文件确实是文件 则从 URL 下载该文件 否则 如果它是一个页面 则什么也不做 举个简单的例子 我有以下命令来下载文件 My Computer Network DownloadFile http www wired c
  • Java中获取集合的幂集

    的幂集为 1 2 3 is 2 3 2 3 1 2 1 3 1 2 3 1 假设我有一个Set在爪哇中 Set
  • 如何构建印度尼西亚电话号码正则表达式

    这些是一些印度尼西亚的电话号码 08xxxxxxxxx 至少包含 11 个字符长度 08xxxxxxxxxxx 始终以 08 开头 我发现这个很有用 Regex regex new Regex 08 0 9 0 9 0 9 0 9 0 9
  • 窗体最大化时自动缩放子控件

    有没有办法在最大化屏幕或更改分辨率时使 Windows 窗体上的所有内容自动缩放 我发现手动缩放它是正确的 但是当切换分辨率时我每次都必须更改它 this AutoScaleDimensions new System Drawing Siz
  • 如何使用 ReactiveList 以便在添加新项目时更新 UI

    我正在创建一个带有列表的 Xamarin Forms 应用程序 itemSource 是一个reactiveList 但是 向列表添加新项目不会更新 UI 这样做的正确方法是什么 列表定义 listView new ListView var
  • 更改显示的 DPI 缩放大小使 Qt 应用程序的字体大小渲染得更大

    我使用 Qt 创建了一些 GUI 应用程序 我的 GUI 应用程序包含按钮和单选按钮等控件 当我运行应用程序时 按钮内的按钮和字体看起来正常 当我将显示器的 DPI 缩放大小从 100 更改为 150 或 200 时 无论分辨率如何 控件的

随机推荐

  • 到底什么是“objc_msgSend_fixup”?

    我正在摆弄 Objective C 运行时 尝试编译 Objective C 代码而不将其链接到libobjc 并且我的程序遇到了一些分段错误问题 因此我从中生成了一个汇编文件 我认为没有必要显示整个汇编文件 在我的某个时刻main函数 我
  • 模块依赖于 Dagger 中的另一个模块

    我正在尝试使用Dagger在我正在构建的应用程序上进行依赖注入 当我有一个包的模块依赖于注入器提供的值 可能是由另一个模块提供 时 在构建正确的 DAG 时遇到了麻烦 如果我有一个用于某些可配置变量的简单模块 例如 我可能想将其换成测试环境
  • LINQ 有多快?

    我需要操作 100 000 200 000 条记录 我正在考虑使用 LINQ 到 SQL 来做到这一点 根据我的经验 我知道过滤数据视图非常慢 那么 LINQ 有多快呢 您能否告诉我您的经验以及它是否值得使用 或者我使用 SQL 存储过程
  • 从 YouTube 链接捕获特定时间范围内的缩略图

    1 有没有一种API方法可以捕获 存储YouTube视频在3 59处的缩略图 该缩略图不是自动生成的缩略图或原始上传者上传的封面缩略图 似乎没有任何确定的答案SO 2 如果 1 不可能 那么我下载原始视频 在所需时间范围内抓取缩略图并在我的
  • 如何忽略合并冲突?

    我有下一个合并冲突 lt lt lt lt lt lt lt Updated upstream my c name shift shift my name defined name name gt name merged common an
  • 块注释开头的感叹号的作用是什么? (那是, ”/*! … */”)

    我刚刚在一些 xcode 示例项目中发现了这个注释声明 property masterVolume abstract Sets the master volume property float masterVolume 注释像往常一样是绿色
  • 轴刻度标记

    我的折线图的 x 轴代表金钱 有没有办法在每个刻度的开头附加一个 符号 目前它们的值只有 2000000 250000 300000 我希望他们显示 2000000 250000 300000 我尝试将 添加到我的 CSV 文件中 但当我尝
  • 使用 ng-transclude 似乎在表格中效果不佳

    我创建了一个简单的指令 用于在 td 当没有表数据时 即 未找到结果 会占用表的整行 在我只有静态文本之前 td 但现在我希望能够将任何 DOM 放入其中 我尝试添加ng transclude按照我的指令 但现在它以一种奇怪的方式渲染元素
  • 如何在Android中使用Web视图访问本地主机服务器

    我有一个 Android 应用程序 我需要访问我的网络服务器并将我的 Android 应用程序连接到网络上的另一个程序 我的网络程序正在工作 当我将其 IP 地址放在 Android FIrefox 或浏览器上时 它正在工作 但是当我用我的
  • 如何在 Angular 2 中解释 MVC 模式?

    找到了一个有用的博客Angular MVC 实现但仍在寻找好的解释角2 General 我认为该模式确实与语言无关 也就是说 设计 架构模式是相当抽象的 并且用不同的语言实现它们遵循这种更抽象的表示 这并不是说我们不能通过示例语言 例如 C
  • 获取 PostgreSQL 中某个范围内的日期列表

    我想获取两个日期 包括它们 之间的天数列表PostgreSQL数据库 例如 如果我有 开始日期 2012年6月29日 结束日期 2012年7月3日 那么结果应该是 29 june 2012 30 june 2012 1 july 2012
  • 初始化大型 std::array 时编译器挂起

    我需要初始化一个非常大的多维std array数据的 class Thing class World public World space nullptr World default private static unsigned int
  • ASP.NET MVC 4 异步控制器回调

    我只是使用 MVC 4 中新的异步控制器功能 如此处所述http www asp net mvc tutorials mvc 4 using asynchronous methods in aspnet mvc 4 如果我有一个可能需要 1
  • Leaflet - 获取覆盖全屏的地图

    在传单和地图框中 我想去掉地图上方和下方的两个灰色条 如下图所示 我的 map DOM 元素占据全屏 并且当我放大时灰色条消失 例如 zoomLevel 3 因此 灰色条似乎是由于 ZoomLevel 具有给定的图块高度 以 px 为单位
  • 获取给定 ID 的最新行

    在下表中 我如何获得最近一行 with id 1基于signin列 而不是全部 3 行 id signin signout 1 2011 12 12 09 27 24 NULL 1 2011 12 13 09 27 31 NULL 1 20
  • 如何在 Xcode 11 中启动没有 Storyboard >= iOS 13 的新项目?

    现在 带有 iOS 13 的 Xcode 11 启动时的设置与之前略有不同 将 AppDelegate m 文件中的许多功能移动到名为 SceneDelegate m 的新文件中 删除 Main storyboard 并在 AppDeleg
  • WPF DataGrid ComboBox 导致 InvalidOperationException

    当我尝试编辑组合框列的值时 我从数据网格中收到 InvalidOperationException AddNew 或 EditItem 事务期间不允许 DeferRefresh 我显示的所有项目都引用了同一列表中的另一个项目 因此这就是我使
  • 将 NumPy 字符串数组转换为日期时间

    例如 我有一个字符串数组 import numpy as np foo np array b 2014 04 05 b 2014 04 06 b 2014 04 07 为了检查数组的数据类型 我用以下命令打印它 print foo dtyp
  • 为什么 InnoDB 中的 IX 锁与另一个 IX 锁兼容?

    根据innodb锁模式 锁类型兼容性矩阵 X IX S IS X Conflict Conflict Conflict Conflict IX Conflict Compatible Conflict Compatible S Confli
  • 在c#中,如何构建从A到ZZ的数组,类似于excel对列进行排序的方式

    我正在寻找可以生成第一项是数组的代码A then B then C 后Z然后它会去AA then AB then AC 一直到ZZ 在 C 中执行此操作的最佳方法是什么 其中一种方法是 IEnumerable