【发布时间】:2020-07-28 05:28:57
【问题描述】:
首先,我几天前开始学习 C#,目前我在“Set/Get”章节。 所以我的教程中出现的每一个新东西我都会尝试将它应用到我的小应用程序上。 即使我不理解这些概念,我也会去其他地方寻找建议,但事实并非如此。
我认为也许在类计算器中我可以添加一个集合并获取,所以我不必在每个方法上声明 num1、num2 变量? (Sumar、Restar、除法、乘法)
class Calculo
{
public static void Suma()
{
int num1, num2 = 0;
Console.Write(" Ingrese el primer numero que quiere sumar: ");
num1 = Convert.ToInt32(Console.ReadLine());
Console.Write(" Ingrese el segundo numero que quiere sumar: ");
num2 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(" Resultado es: " + (num1 + num2));
}
public static void Resta()
{
int num1, num2 = 0;
Console.Write(" Ingrese el primer numero que quiere restar: ");
num1 = Convert.ToInt32(Console.ReadLine());
Console.Write(" Ingrese el segundo numero que quiere restar: ");
num2 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(" Resultado es: " + (num1 - num2));
}
public static void Division()
{
int num1, num2 = 0;
Console.Write(" Ingrese el primer numero que quiere Dividir: ");
num1 = Convert.ToInt32(Console.ReadLine());
Console.Write(" Ingrese el segundo numero que quiere Dividir: ");
num2 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(" Resultado es: " + (num1 / num2));
}
public static void Multiplicacion()
{
int num1, num2 = 0;
Console.Write(" Ingrese el primer numero que quiere multiplicar: ");
num1 = Convert.ToInt32(Console.ReadLine());
Console.Write(" Ingrese el segundo numero que quiere multiplicar: ");
num2 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(" Resultado es: " + (num1 * num2));
}
}
谢谢!
@乔舒亚·乔治
那么这是在我的程序中使用这个新类的正确方法吗?
...
public static void Multiplicacion()
{
MyClass numbers = new MyClass();
Console.Write(" Ingrese el primer numero que quiere multiplicar: ");
numbers.Num1 = Convert.ToInt32(Console.ReadLine());
Console.Write(" Ingrese el segundo numero que quiere multiplicar: ");
numbers.Num2 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(" Resultado es: " + (numbers.Num1 * numbers.Num2));
}
...
【问题讨论】:
-
由于每个方法完全负责请求输入,进行计算,然后输出结果,因此您不需要共享状态。属性用于共享状态,在这种情况下您不需要它。您可以通过将变量的声明从 ToInt32 向下移动到初始化它的位置来从每个方法中删除 1 行代码,还要注意
int num1, num2 = 0;只会初始化num2,num1仍然保持未初始化状态。 -
你应该查一下static是什么意思。然后你可以尝试创建一个带参数的方法并返回一个结果
-
@LasseV.Karlsen 所以在我的特殊情况下,假设我想添加另一个选项来计算圆的面积和周长,PI 可以用作属性。对吗?
-
PI 已经存在,如
Math.PI,但如果不存在,那么是的,您可以这样做。 -
@LasseV.Karlsen 没有进入数学课...谢谢!!!
标签: c# properties