关于方法调用括号传参必要性及Check方法无参调用的技术咨询
问题解答
关于传参的疑问
- 你传入的整数5和用户输入完全无关:当前
Check方法的逻辑完全依赖用户通过Console.ReadLine()输入的值,定义的参数myInt在方法内部没有被使用,属于无效参数。 - 这个传参操作是当前方法定义下的必要步骤:因为你定义的
Check方法明确要求接收一个int类型参数,C#语法强制调用时必须传入符合类型要求的参数,否则无法通过编译。
实现无参调用Check方法的方案
只需要修改Check方法的签名,移除参数定义,调用时就无需传入值了。修改后的完整代码如下:
static void Main(string[] args) { Check(); // 无需传入参数 Console.Read(); } public static void Check() // 移除int类型参数 { Console.WriteLine("Enter a number to check if it is odd or even number: "); string userInput = Console.ReadLine(); int userInputNum; int parsedValue; if (Int32.TryParse(userInput, out userInputNum)) { parsedValue = userInputNum; } else { parsedValue = 0; Console.WriteLine("You did not enter a number or anything."); } if ((parsedValue % 2) == 0) { Console.WriteLine("It is an even number."); } else { Console.WriteLine("It is an odd number."); } }
注:原代码中存在拼写错误checkc,已在修改后的代码中修正为check。
内容的提问来源于stack exchange,提问作者alizzaade
相关产品推荐
相关产品推荐

