Java - 如何只比较一个变量值与其先前的值?

时间:2015-07-03 06:16:20

标签: java oop

我正在研究简单的Java应用程序。应用程序应该能够比较变量值。例如,在我的class A内,有一个名为alt_value的变量。

所以,这个alt_value从无人机中获取此值(我设法从无人机获取值)。我需要做的就是将当前alt_value与之前的值进行比较。如果当前alt_value高于之前的值,则应显示“Going Up!”反之亦然。

怎么可以这样做?任何的想法?感谢。

6 个答案:

答案 0 :(得分:2)

像这样的somtehing?

public static void main(String[] args) {
        String[] test = {"A", "B", "B", "C", "D", "E"};
        String prev = "";
        for (int i = 0; i < test.length; i++){
            if (test[i].equals(prev)){
                System.out.println("equals: " + prev);
            }
            prev = test[i];
        }
    }

答案 1 :(得分:0)

在班级中保留两个变量。一个用于新值,另一个用于旧值。每当您获得新值时,将其与具有先前值的变量进行比较。

答案 2 :(得分:0)

制作变量&#34; alt_value&#34;私密并创建一个制定者&#34; setAlt_value( .. )&#34;。在setter中比较alt_value中的现有值和新值,您将获得setAlt_value()中的参数。

答案 3 :(得分:0)

当您设置新值时,您可以执行以下操作。

class Foo{
 int alt_value;
 String status;

 //setter for the alt_value will be called to set new value
 void setAltValue(int new_alt_value){
      if(new_alt_value > alt_value){
          status = "Going up";
      }
      this.alt_value = new_alt_value;
   }

}

答案 4 :(得分:0)

或类似的东西:

  class A {
    private int alt_value = 0;

    public int getAlt_value() {
      return alt_value;
    }

    public void setAlt_value(int alt_value) {
      this.alt_value = alt_value;
    }

    public boolean compare(int value) {
      boolean goingUp = value > alt_value;
      alt_value = value;
      return goingUp;
    }
  }

然后你可以打电话:

A instance = new A();
if (instance.compare(4)) {
  // show "Going Up"!
}

答案 5 :(得分:0)

您需要有一个临时变量来存储以前的值。这样的事情对你有用

prev_alt_value = alt_value;
alt_value = droneMethodCall();
if(alt_value > prev_alt_value)
    System.out.println("Going Up!");