简体   繁体   English

System.Array不包含ToArray的定义

[英]System.Array does not contain a definition for ToArray

How can I get this int[] array after the .Split() ? 如何在.Split()之后得到这个int[]数组?

string s = "1,2,3,4";
int[] a = s.Split(',').ToArray<int>();

Split doesn't give you magically int values, it returns an array of string. Split不会给你神奇的int值,它会返回一个字符串数组。 So you'll have to convert. 所以你必须转换。

s.Split(',').Select(x => Convert.ToInt32(x)).ToArray();

I would do as Raphaël says, but if you are unfamiliar with lambda expressions (the x => .. part) you can use this instead. 我会按照Raphaël的说法做,但如果你不熟悉lambda表达式(x => ..部分),你可以使用它。 Both will give you an array of int's, Raphaëls example is to be preferable, but Lambda expressions can be scary when you don't know how they work :P (Basically it means "for each string x, do Convert.ToInt32(x)". 两者都会给你一个int数组,Raphaëls例子更可取,但Lambda表达式在你不知道它们如何工作时可能会很吓人:P(基本上它意味着“对于每个字符串x,做Convert.ToInt32(x) ”。

int[] a = s.Split(',').Select(int.Parse).ToArray();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 system.array不包含ToArray的定义,也没有扩展方法 - system.array does not contain a definition for ToArray and no extension method System.Array&#39; 不包含 &#39;Count&#39; 的定义 - System.Array' does not contain a definition for 'Count' System.Array不包含“拆分”的定义 - System.Array does not contain a definition for 'Split' System.Array不包含添加的定义 - System.Array does not contain definition for Add System.Array 不包含“Split”的定义并且没有扩展方法“Split” - System.Array does not contain a definition for 'Split' And no extension method "Split" 我收到一个错误“ System.Array不包含LastWriteTime的定义” - i get an error “System.Array does not contain a definition for LastWriteTime” 名称冲突? &#39;System.Array&#39;不包含&#39;item&#39;的定义 - Name Conflict? 'System.Array' does not contain a definition for 'item' 错误95&#39;System.Array&#39;不包含&#39;FindIndex&#39;的定义 - Error 95 'System.Array' does not contain a definition for 'FindIndex' System.Array不包含“任何”的定义-C# - System.Array does not contain a definition for 'Any' - C# 为什么我用这个WinRT代码得到&#39;&#39;System.Array&#39;不包含&#39;AsBuffer&#39;的定义? - Why am I getting “'System.Array' does not contain a definition for 'AsBuffer'” with this WinRT code?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM