C# 使用拆分方法读取单行中的多个整数时出错
从用户处读取整数时,使用C# 使用拆分方法读取单行中的多个整数时出错,c#,split,C#,Split,从用户处读取整数时,使用Split时出错 int[] a = new int[s]; for (i = 0; i < s; i++) { a[i] = Int32.Parse(Console.ReadLine().Split(' ')); } int[]a=新的int[s]; 对于(i=0;i
Split
时出错
int[] a = new int[s];
for (i = 0; i < s; i++)
{
a[i] = Int32.Parse(Console.ReadLine().Split(' '));
}
int[]a=新的int[s];
对于(i=0;i
您能否帮助我如何使用
Split
因为Split返回一个数组,每次需要i'ed数组时,您都应该这样更改它:
int[] a = new int[s];
string[] input = Console.ReadLine().Split(' ');
for (i = 0; i < s; i++)
{
a[i] = Int32.Parse(input[i]);
}
int[]a=新的int[s];
string[]input=Console.ReadLine().Split(“”);
对于(i=0;i
顺便说一句,您只需要读取一次输入。
比如@loneshark99说使用TryParse()会更好。因为它返回一个布尔值,所以可以检查输入是否确实是整数。如果您只使用Parse,而它们不是整数,则会引发异常
使用TryParse()进行编码:
int[]a=新的int[s];
string[]input=Console.ReadLine().Split(“”);
对于(i=0;i
if语句不是必需的,但它只是指出如何使用TryParse。因为split返回一个数组,每次需要i'ed数组时,都应该这样更改它:
int[] a = new int[s];
string[] input = Console.ReadLine().Split(' ');
for (i = 0; i < s; i++)
{
a[i] = Int32.Parse(input[i]);
}
int[]a=新的int[s];
string[]input=Console.ReadLine().Split(“”);
对于(i=0;i
顺便说一句,您只需要读取一次输入。
比如@loneshark99说使用TryParse()会更好。因为它返回一个布尔值,所以可以检查输入是否确实是整数。如果您只使用Parse,而它们不是整数,则会引发异常
使用TryParse()进行编码:
int[]a=新的int[s];
string[]input=Console.ReadLine().Split(“”);
对于(i=0;i
if语句不是必需的,但它只是指出如何使用TryParse。LINQ在这里确实可以帮助您:
int[] a = Console.ReadLine().Split(' ').Select(int.Parse).ToArray();
LINQ真的可以在这里帮助您:
int[] a = Console.ReadLine().Split(' ').Select(int.Parse).ToArray();
我们可以先将输入作为字符串
string[] array_temp = Console.ReadLine().Split(' ');
然后将数组转换为Int
int[] array = Array.ConvertAll(array_temp,Int32.Parse);
我们可以先将输入作为字符串
string[] array_temp = Console.ReadLine().Split(' ');
然后将数组转换为Int
int[] array = Array.ConvertAll(array_temp,Int32.Parse);
错误是什么?用户输入是什么样子的?“1 2 3 4 5”?此代码的用途是什么?是否要调用Console.ReadLine()的次数?一个样本输入和预期输出将不胜感激@代码学徒:它在拆分方法附近给了我一个重载错误。请你的问题显示准确的错误消息。错误是什么?用户输入看起来像什么?“1 2 3 4 5”?此代码的用途是什么?是否要调用Console.ReadLine()的次数?一个样本输入和预期输出将不胜感激@“代码学徒”在split方法附近给了我一个重载错误。请您的问题显示准确的错误消息。您可能应该使用TryParse方法,而不是Parse方法,因为它是用户输入。我还将拆分移到循环之外,这样您就不会拆分字符串
s
次。@loneshark99我将其添加到解决方案中。。)您可能应该使用TryParse方法,而不是Parse方法,因为它是用户输入。我还将拆分移到循环之外,这样您就不会拆分字符串s
次。@loneshark99我将其添加到解决方案中。。)