C#:将int[]转换为字符串的最有效方法

2024-02-18

我确实知道此类问题已经被回答过很多次了。尽管我找到了很多可能的答案,但它们仍然没有解决我的问题,即实现将整数数组转换为单个字符串的最快方法。我有例如:

int[] Result = new int[] { 1753387599, 1353678530, 987001 }

我希望它颠倒过来,所以我相信最好在进一步的代码之前加上

Array.Reverse(Result);

虽然我不是从末尾开始迭代,但是相当于倒转,因为我是从末尾调用元素的。所以我已经这样做了。只是为了让您知道 - 如果您能想到除我之外的任何其他解决方案,我建议使用此 Array.Reverse,因为解决方案必须反转。 我总是只关心数字的最后 9 位 - 就像模 1 000 000 000 一样。这是我想要得到的:

987001|353678530|753387599

分隔符现在就清楚了。我编写了自己的函数,该函数比使用 .ToString() 快约 50%。 tempint - int 数组的当前元素, StrArray - 字符串数组。不值得使用 StringBuilder 或求和 字符串,所以最后我只需连接 AnswerArr 的元素即可获得结果。 IntBase - 包含 1000 个元素的数组,数字为从“000”到“999”的字符串,索引为 0 到 999。

    for (i = 0; i < limit; i++)
    {
    //Some code here

    j = 3 * (limit - i);

    //Done always
    StrArray[j - 1] = IntBase[tempint % 1000];

    if (tempint > 999999) 
    {
        //Done in 99/100 cases
        StrArray[j - 2] = IntBase[tempint % 1000000 / 1000]; 
        StrArray[j - 3] = IntBase[tempint % 1000000000 / 1000000];
    }
    else
    {
        if (tempint > 999) 
        {
            //Done just once
            StrArray[j - 2] = IntBase[tempint % 1000 / 1000];
        }
    }
    }
    //Some code here

    return string.Join(null, StrArray);

在这部分之前有很多计算,而且完成得非常快。虽然一切都在 714 毫秒内完成,但如果不将整数相加,则只有 337 毫秒。

预先感谢您的任何帮助。

此致, 伦道夫


最快的?最有效率?我不确定,你应该尝试一下。但有一个简单的转换方法

int[] Result = new int[] { 1753387599, 1353678530, 987001 };
var newstr = String.Join("|", Result.Reverse().Select(i => i % 1000000000));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C#:将int[]转换为字符串的最有效方法 的相关文章

随机推荐

  • 如何使用spirit解析器获取错误位置

    我用spirit编写了一个简单的解析器 类似于json 但更简单 更专业 按照以下建议here http boost spirit com home articles qi example tracking the input positi
  • 通过运行 AsyncTask 处理方向变化[重复]

    这个问题在这里已经有答案了 使用案例 用户启动将加载验证码的应用程序 用户填写验证码并尝试下载一些信息 Problem 如果用户在下载时旋转设备Activity被摧毁了 在执行结束时 AsyncTask 尝试更新已销毁的Activity和r
  • 将依存解析的输出转换为树

    我在用Stanford dependency parser我得到以下句子的输出 我在睡梦中射杀了一头大象 python dep parsing py u shot u VBD u nsubj u I u PRP u shot u VBD u
  • JavaScript 和 ActionScript 3 之间的主要区别是什么?

    我知道这两种语言都来自相同的 ECMA 262 标准 看来两者变得非常相似 JavaScript 通过以下方法为核心对象实例添加事件侦听器freeze and sealECMAScript 262 第 5 版等 我想知道有什么区别 首先 A
  • 将 Tensorflow 模型转换为 tensorflow-lite (.tflite) 格式时出现问题

    我用 python 制作了一个用于图像分类的张量流模型 我使用的是 Windows 10 我有一个Train py我在其中定义图形的类build graph 并训练模型train 这里是main py script import fire
  • 如何查明使用哪个密钥库来签署应用程序?

    我有一个已签名的应用程序和几个密钥库文件 我想更新应用程序 因此我需要找出使用了哪一个按键 如何将最初用于签署我的应用程序的密钥库与我计算机上的各种密钥库进行匹配 首先 解压APK并提取文件 META INF ANDROID RSA 该文件
  • 使用 Numpy 或 TensorFlow 实现多个 2D 矩阵的高效轴方向笛卡尔积

    因此 首先 我认为我想要实现的是某种笛卡尔积 但仅在各列之间按元素进行 我想做的是 如果您有多个大小为 N D1 N D2 N D3 N Dn 的二维数组 因此 结果是跨 axis 1 的组合乘积 最终结果的形状为 N D 其中 D D1
  • BufferedReader 不读取过去的空行[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我试图找出
  • djangorest框架迭代模型序列化器中的字段

    我想迭代 ModelSerializer 中的字段并希望将这些字段设置为必填字段 这不起作用 我怎样才能做到这一点 有人请帮助我 class CustomerSerializer serializers ModelSerializer cl
  • Github Actions 徽章不显示状态

    我在我的存储库上运行了很多次 github 操作 没有出现任何问题 并且在我的存储库之一上使用相同的脚本 它显示 无状态 回购协议是 https github com aurelpere python planif https github
  • 如何使用 JDBC 从数据库检索 SDO_GEOMETRY?

    我是 Java 新手 我需要从数据库检索 SDO GEOMETRY 并使用 jdbc 将其转换为字符串 如果有人有示例或想法 请与我分享 如有帮助 将不胜感激 此致 Sanjay 看看几何学 http download oracle com
  • django.db.utils.OperationalError:(2005,“未知的 MySQL 服务器主机 'db' (-2)”)

    我正在尝试在 docker 容器中运行 django 和 mysql version 2 services db image mysql latest volumes db var lib mysql ports 3306 3306 env
  • 检查编译单元的 DWARF 版本

    全部 有没有工具可以检查文件的 DWARF 版本 像这样的东西 dwarf tool binary name 4 在Linux环境下 如果你安装了 GCC 你应该有readelf可执行的 所以你可以尝试这个 readelf debug du
  • UITableViewRowAnimationFade 不起作用

    所以 这个问题是从上一期 https stackoverflow com questions 11330153 但我决定发布一个新问题以保持相关性和整洁 基本上 当调用下面这段代码时 两者没有区别UITableViewRowAnimatio
  • 系统错误:父模块“未加载”,无法执行相对导入[重复]

    这个问题在这里已经有答案了 我有以下目录 myProgram app init py main py mymodule py mymodule py class myclass object def init self pass def m
  • 如何将mongodb与casbah的连接池化?

    我正在使用 mongodb 和 scala 驱动程序casbah 如果我没理解错的话 它不提供连接池 有没有 casbah 的池库 比如dbcp c3p0用于 jdbc 连接 Casbah 包装了 MongoDB Java 驱动程序 它提供
  • 正确地将参数传递给 Go Exec

    我正在尝试学习 Go 作为开始 我想尝试构建一个超级简单的 Web 服务器来控制我的 iTunes 我用过osascript e Tell Application iTunes to playpause 过去曾多次出于此目的 我想我可以简单
  • 本地数据库 API - 已弃用 有什么替代方案? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 稀疏矩阵作为 R 中层次聚类的输入

    我有一个关于使用距离矩阵进行聚类的问题 但稀疏 是否存在不扩展矩阵并且可以使用稀疏表示的稀疏距离对象格式 目前我正在做以下事情 read sparse matrix sparse lt readMM sparse matrix distan
  • C#:将int[]转换为字符串的最有效方法

    我确实知道此类问题已经被回答过很多次了 尽管我找到了很多可能的答案 但它们仍然没有解决我的问题 即实现将整数数组转换为单个字符串的最快方法 我有例如 int Result new int 1753387599 1353678530 9870