所以我在尝试比较Main类中声明的两个字符串时遇到了一些问题。我搞砸了,我真的无法使它正常工作!问题出在我比较变量的if()语句中...

public class Main {

    public String oldContent = "";
    public String newContent = "";

    public static void main(String[] args) throws InterruptedException {
        Main downloadPage = new Main();
        downloadPage.downloadPage();
        oldContent = newContent;

        for (;;) {
            downloadPage.downloadPage();
            if (!oldContent.equals(newContent)) { // Problem
                System.out.println("updated!");
                break;
            }
            Thread.currentThread().sleep(3000);
        }
    }

    private void downloadPage() {
        // Code to download a page and put the content in newContent.
    }
}

最佳答案

变量是实例成员,而for是在静态方法中发生的。
尝试将实际函数移至实例方法(非静态),或者相反使数据成员也变为静态。

07-26 02:16