【发布时间】:2019-03-08 00:56:50
【问题描述】:
我在 C# 中有一个名为“operator”的对象,它的方法从用户那里获取两个数字输入并将它们相加。但是,我想将第二个参数(第二个输入)设为可选,以便在用户不输入第二个数字时默认为“4”。
我知道出了点问题,因为如果用户只输入一个数字并在提示输入第二个数字时按回车,它只会结束程序而不是使用默认值。
这个解决方案可能很明显,但它让我望而却步。如果有人能查看我的代码并了解我缺少什么,我将不胜感激。
非常感谢!
程序代码:
class Program
{
static void Main(string[] args)
{
Operator operatorObject = new Operator();
Console.WriteLine("Pick a number:");
int userValue = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Pick another number--optional");
int userValue2 = Convert.ToInt32(Console.ReadLine());
int result = operatorObject.operate(userValue, userValue2);
Console.WriteLine(result);
Console.ReadLine();
}
}
类代码:
public class Operator
{
public int operate(int data, int input=4)
{
return data + input;
}
}
更新:感谢大家的回答!由于各种建议,我想我现在已经开始工作了。非常感谢您的帮助!
【问题讨论】:
-
你确定吗? userValue+userValue2 ı 事物 (userValue,UserValue2);
-
谢谢你,snn。你对那个错误是正确的。我修复了它,但是当没有输入第二个输入时,它仍然不允许默认工作。不过,它确实解决了在输入两者时添加输入的问题。
-
检查 Console.ReadLine() 是否是一个数字...您将其转换为 int 而无需任何检查。
-
Convert.ToInt32 无法将空字符串转换为数字。当您处理期望将数字作为输入的用户输入时,请始终使用 Int32.TryParse
-
@FreddieMercury 你已经问了 6 个问题,但从未接受过一个。是时候阅读How does accepting an answer works
标签: c# class methods parameters