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

用户2004

如何将像这样的字符串var numbers = "2016, 2017, 2018";转换为List<int>

我试过这个:

List<int> years = Int32.Parse(yearsString.Split(',')).ToList();

但我收到以下错误消息:

无法从 string[] 转换为 string。

一般

像这样的东西

var results = yearsString.Split(',').Select(x => int.Parse(x.Trim()));

注意:这种方法没有容错能力,如果它们不能转换成int这种方法,就会抛出异常

只是为了好玩,这里是一种使用指针unsafefixed

fixed (char* pInput = Input)
{
   var len = pInput + Input.Length;
   var current = 0;
   var results = new List<int>();

   for (var p = pInput; p < len; p++)
   {
      if (*p >= 48 & *p <= 58)
         current = current * 10 + *p - 48;          
      else if (*p == ',')
      {
         results.Add(current);
         current = 0;
      }
   }

   results.Add(current);
   return results;
}

基准

只是因为我很无聊

----------------------------------------------------------------------------
Mode             : Release (64Bit)
Test Framework   : .NET Framework 4.7.1 (CLR 4.0.30319.42000)
----------------------------------------------------------------------------
Operating System : Microsoft Windows 10 Pro
Version          : 10.0.17134
----------------------------------------------------------------------------
CPU Name         : Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz
Description      : Intel64 Family 6 Model 42 Stepping 7
Cores (Threads)  : 4 (8)      : Architecture  : x64
Clock Speed      : 3401 MHz   : Bus Speed     : 100 MHz
L2Cache          : 1 MB       : L3Cache       : 8 MB
----------------------------------------------------------------------------

测试 1

--- Standard input --------------------------------------------------------
| Value  |    Average |    Fastest |    Cycles | Garbage | Test |    Gain |
--- Scale 100 ---------------------------------------------- Time 0.003 ---
| Unsafe |   2.304 µs |   2.101 µs |   9.298 K | 0.000 B | Pass | 90.28 % |
| Linq   |  23.711 µs |  22.214 µs |  82.700 K | 0.000 B | Base |  0.00 % |
--- Scale 1,000 -------------------------------------------- Time 0.046 ---
| Unsafe |  21.697 µs |  21.013 µs |  75.490 K | 0.000 B | Pass | 90.41 % |
| Linq   | 226.218 µs | 205.332 µs | 768.447 K | 0.000 B | Base |  0.00 % |
--- Scale 10,000 ------------------------------------------- Time 0.250 ---
| Unsafe | 214.526 µs | 200.829 µs | 733.557 K | 0.000 B | Pass | 89.93 % |
| Linq   |   2.130 ms |   1.996 ms |   7.257 M | 0.000 B | Base |  0.00 % |
--- Scale 100,000 ------------------------------------------ Time 2.906 ---
| Unsafe |   2.303 ms |   2.063 ms |   7.680 M | 0.000 B | Pass | 90.99 % |
| Linq   |  25.571 ms |  22.624 ms |  84.808 M | 0.000 B | Base |  0.00 % |
--- Scale 1,000,000 --------------------------------------- Time 36.594 ---
| Unsafe |  23.061 ms |  21.910 ms |  78.356 M | 0.000 B | Pass | 93.07 % |
| Linq   | 332.639 ms | 274.595 ms |   1.055 B | 0.000 B | Base |  0.00 % |
---------------------------------------------------------------------------

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

将逗号分隔的字符串列表转换为整数列表

来自分类Dev

如何将字符和整数列表转换为字符串

来自分类Dev

如何将逗号分隔的字符串或/ n分隔的字符串转换为jquery中的列表?

来自分类Dev

如何将逗号分隔的字符串转换为对象内的分隔数组?

来自分类Dev

将逗号分隔的字符串转换为列表

来自分类Dev

将整数列表转换为字符串

来自分类Dev

将整数列表转换为字符串

来自分类Dev

将字符串数组转换为整数列表?

来自分类Dev

Ansible-如何将字符串列表转换为整数列表?

来自分类Dev

如何将逗号分隔的字符串列转换为列表?

来自分类Dev

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

来自分类Dev

如何将字符串转换为以红宝石分隔的逗号?

来自分类Dev

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

来自分类Dev

如何将逗号分隔的字符串转换为python字典?

来自分类Dev

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

来自分类Dev

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

来自分类Dev

如何将逗号分隔的字符串转换为 LIST 或 IEnumerable 的 KeyValuePair

来自分类Dev

如何将逗号和括号分隔列表的字符串转换为另一个字符串?

来自分类Dev

在Python中x元素后仅用一个逗号将整数列表转换为字符串

来自分类Dev

将字符串或列表的映射转换为值的字符串或逗号分隔的值

来自分类Dev

将逗号分隔的字符串转换为带单引号的字符串列表

来自分类Dev

如何将数组列表转换为散列分隔的字符串?

来自分类Dev

如何将包含字符串的列表转换为包含整数的列表(Python)

来自分类Dev

用逗号分隔的字符串将数字转换为JavaScript中的整数数组

来自分类Dev

将逗号分隔的字符串转换为R中的整数

来自分类Dev

将逗号分隔的整数长字符串转换为x和y列

Related 相关文章

  1. 1

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

  2. 2

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

  3. 3

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

  4. 4

    将逗号分隔的字符串列表转换为整数列表

  5. 5

    如何将字符和整数列表转换为字符串

  6. 6

    如何将逗号分隔的字符串或/ n分隔的字符串转换为jquery中的列表?

  7. 7

    如何将逗号分隔的字符串转换为对象内的分隔数组?

  8. 8

    将逗号分隔的字符串转换为列表

  9. 9

    将整数列表转换为字符串

  10. 10

    将整数列表转换为字符串

  11. 11

    将字符串数组转换为整数列表?

  12. 12

    Ansible-如何将字符串列表转换为整数列表?

  13. 13

    如何将逗号分隔的字符串列转换为列表?

  14. 14

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

  15. 15

    如何将字符串转换为以红宝石分隔的逗号?

  16. 16

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

  17. 17

    如何将逗号分隔的字符串转换为python字典?

  18. 18

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

  19. 19

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

  20. 20

    如何将逗号分隔的字符串转换为 LIST 或 IEnumerable 的 KeyValuePair

  21. 21

    如何将逗号和括号分隔列表的字符串转换为另一个字符串?

  22. 22

    在Python中x元素后仅用一个逗号将整数列表转换为字符串

  23. 23

    将字符串或列表的映射转换为值的字符串或逗号分隔的值

  24. 24

    将逗号分隔的字符串转换为带单引号的字符串列表

  25. 25

    如何将数组列表转换为散列分隔的字符串?

  26. 26

    如何将包含字符串的列表转换为包含整数的列表(Python)

  27. 27

    用逗号分隔的字符串将数字转换为JavaScript中的整数数组

  28. 28

    将逗号分隔的字符串转换为R中的整数

  29. 29

    将逗号分隔的整数长字符串转换为x和y列

热门标签

归档