Processing 仅当一个字符串不等于另一个字符串时绘制?

Processing 仅当一个字符串不等于另一个字符串时绘制?,processing,Processing,我有一个文本文件,我不断地检查最后一行,看看它是否改变了。我只想在文件的最后一行发生更改时更新图形,但我想不出该怎么做 这是我到目前为止所做的,lastLine检查文件的最后一行: String last = lastLine(file); String previous = null; float r = random(0,255); float g = random(0, 255); float b = random(0, 255); public void settings

我有一个文本文件,我不断地检查最后一行,看看它是否改变了。我只想在文件的最后一行发生更改时更新图形,但我想不出该怎么做

这是我到目前为止所做的,lastLine检查文件的最后一行:

String last = lastLine(file);
String previous = null;

float r = random(0,255);
float g = random(0, 255);
float b = random(0, 255);



    public void settings() {
        size(500, 500);
    }
    public void setup() {
      frameRate(60);
        stroke(155, 0, 0);
        textSize(30);
    }

    void draw() {
      if (last != previous) {
          background(r+(random(0,100)), g+(random(0,100)), b+(random(0,100)));
          previous = last;
      }

      if (last == previous) {
        text(lastLine(file), 255, 255);
      }
    }
现在,这会随着文件的更改而更新文本,但背景保持不变

如何执行此操作?

在比较字符串值时,不要使用==运算符。使用equals方法:

要检查它们是否不相等,请使用!接线员:

if (!last.equals(previous)) {
发件人:

要比较两个字符串的内容,请使用equals方法,如if a.equalsb,而不是if a==b。字符串是一个对象,因此将它们与==运算符进行比较只能比较两个字符串是否存储在同一内存位置。使用equals方法将确保比较实际内容。这个问题有一个较长的解释

if (!last.equals(previous)) {