C# 如果 int 值增加/增加 5 或特定值,则执行某些操作

  • 本文关键字:增加 执行 操作 int 如果 c#
  • 更新时间 :
  • 英文 :


想知道如果 int 值增加 5 或特定值是否可以做点什么?如果是这样,怎么能做到?

例如:

int intExample = 0;
if(intExample has incremented/increased by 5 or specific value) {
doSomething();
}

只要它增加 5 或特定值,它就会调用 doSomething() 方法。

提前感谢!

使用字段会很困难,但使用属性可以分别控制 getter 和 setter,并且可以在事件发生之前处理它们。下面是一个差异为 5 和特定值 99 的示例。

public class Foo
{
    private int intExample = 0;
    public int IntExample 
    {
        get { return intExample ; }
        set 
        {
            // if the value trying to be set is 5 lower or higher or is 99 call the method
            if((value == intExample - 5) ||
               (value == intExample + 5) ||
               (value == 99))
            {
                DoSomething();
            }
            // set the value in the private field
            intExample = value;
        }
    }
    private void DoSomething()
    {
        // do something here
    }
}

如何使用它的示例是

// create the class
Foo foo = new Foo();
// set value of 32, this will change it but will not trigger as the default is 0 and is not 5 higher or lower or value of 99
foo.IntExample = 32;
// this will trigger as it's 5 more
foor.IntExample = 37;

您可以将属性与事件发射器一起使用

private int _prop1;
//#1
public event System.EventHandler PropertyChanged;
//#2
protected virtual void OnPropertyChanged()
{ 
     if (PropertyChanged != null) PropertyChanged(this,EventArgs.Empty); 
}
public int Prop1
{
    get
    {
         return _prop1;
    }
    set
    {
         //#3
         _prop1=value;
         OnPropertyChanged();
    }
 }

最新更新