在C#控制台应用程序中是否可以将整数值作为方法参数传递
在我的代码中在C#控制台应用程序中是否可以将整数值作为方法参数传递,c#,console,C#,Console,在我的代码中 static void Main(string[] args) { } 我想要的是在方法args中传递整数值 static void Main(int? args) { } 我希望这是不可能的,但您可以像已经获得的那样获得字符串数组的值,并解析它们以获得所需的整数 public static int[] intArgs; static void Main(string[] args) { intArgs = args.Select(x=> int.Parse
static void Main(string[] args)
{
}
我想要的是在方法args中传递整数值
static void Main(int? args)
{
}
我希望这是不可能的,但您可以像已经获得的那样获得字符串数组的值,并解析它们以获得所需的整数
public static int[] intArgs;
static void Main(string[] args)
{
intArgs = args.Select(x=> int.Parse(x)).ToArray();
}
你不能-你只能接受字符串。但是,您可以将这些字符串解析为整数。例如:
static void Main(string[] args)
{
int[] intArgs = args.Select(int.Parse).ToArray();
// ...
}
请注意,如果任何参数实际上不是整数,这将引发异常。如果您想要更方便用户的消息,则需要使用int.TryParse
,例如
static void Main(string[] args)
{
int[] intArgs = new int[args.Length];
for (int i = 0; i < args.Length; i++)
{
if (!int.TryParse(args[i], out intArgs[i]))
{
Console.WriteLine($"All parameters must be integers. Could not convert {args[i]}");
return;
}
}
}
static void Main(字符串[]args)
{
int[]intArgs=新的int[args.Length];
for(int i=0;i
当您使用console时,当您键入“123”时,它是字符串123而不是整数值123。
因此,静态voidMain(int[]args)
不是一个选项
查看MSDN文档:
但是,您可以将字符串解析为int。
例如:
var intValue = int.Parse(args[0]);
不。您需要转换或使用许多命令行解析器库中的一个来为您处理转换。>嗯,这里ASP.NET标记的用途是什么?在哪里可以找到ASP.NET标记@Steven已从您的标签列表中删除。请参见编辑修订。