将两个不同的属性值传递给方法

本文关键字:属性 值传 方法 两个 | 更新日期: 2023-09-27 18:06:12

我有两个不同的属性,因此有两个值。这些属性是读和写属性。我有一个方法,我需要将两个属性值传递给这个方法。我如何做到这一点?使用Array是唯一的方法吗?下面是示例:

在Calculator示例中:

//Property 1
public int numberone
{
 get { return passnumberone; }
 set { passnumberone = Add(value);}
}
//Property 2
public int numbertwo
{
 get { return passnumbertwo; }
 set { passnumbertwo = Add(value);}
 }
//Method
private int Add(?)
{
int numberone
int numbertwo
int finalanswer
finalanswer = numberone + numbertwo
return finalanswer;
}
//Calling 
Calculator.numberone = 10;
Calculator.numbertwo = 12;

我知道我可以只使用这个方法并且很容易地传递这两个数字。但是我正在尝试使用属性。

提前感谢!

将两个不同的属性值传递给方法

如果该对象与包含Add方法的对象不同,则必须将包含属性的对象传递给该方法。

class CalculatorInputs
{
  public int numberone;
  public int numbertwo;
}
class CalculatorOperations
{
  public int Add(CalculatorInputs input)
  {
    return input.numberone + input.numbertwo;
  }
}

您可以将这两个值作为参数传递给方法:

private int Add(int numberone, int numbertwo)
{
    int finalanswer
    finalanswer = numberone + numbertwo
    return finalanswer;
}

那么你可以这样调用它:

int answer = this.Add(numberone, numbertwo);

但老实说,你的第一个问题与你的第二个问题相矛盾,而且,你不应该每次设置一个数字时都调用这个,这对我来说有点困惑,可能有更好的方法来做,但我确信你想要达到的目的

由于您在调用方法之前设置了属性,因此您不必向方法传递任何内容。

private int Add()
{
    int finalanswer;
    finalanswer = this.numberone + this.numbertwo
    return finalanswer;
}

你可以调用

Calculator c = new Calculator();
c.numberOne = 10;
c.numberTwo = 12;
int sum = c.Add();

我不知道你在这里要做什么,但无论如何,你都需要第三个属性,它实际上会给你添加值;

所以根本不需要调用Add方法

public int AddedNumber
{
 get { return passnumberone + passnumbertwo ; } 
}

如果这不是你想要的,那么请扩展并添加更多细节到你的问题。