0

私はJavaを初めて使用し、オブジェクトの参照/呼び出しを条件とする「while」ループを含むプログラムに遭遇しました。コードを徹底的に追跡しましたが、オブジェクトの終了条件は見当たりませんでした (while ループ条件内のオブジェクトに、「while」ループの実装によって引き起こされた終了条件があった場合は意味があります)。

注:これには「内部」/「ネストされた」クラスが含まれているため、それがこれが機能する理由であるかどうかは完全にはわかりません。このような構文でループをどのように満たすことができるでしょうか? 以下の疑似コードで質問を組み立ててみます。

class DemoClass {

    demoClassfoo() {

        InnerClassdemo object2 = this.new InnerDemoClass;

        // Here is where my confusion is. I always thought that the 
        // while loop had to terminate with a logical statement being 
        // satisfied: like it is calling an object? 

        while(object2.innerClassfoo()) { 

            IMPLEMENTATIONS;             
        }                                
    }                                    

    class InnerDemoClass {               

        innerDemoClassfoo() {

            IMPLEMENTATION;
        }
    }

    public static void main(String[] args) {

        DemoClass object = new DemoClass();

    }
}
4

1 に答える 1

8

メソッドが値をinnerClassfoo返しboolean、条件を満たしているため、これは機能しwhileます。ちなみに、コードは次のようになります。

class InnerDemoClass{               

    boolean innerDemoClassfoo(){
        //implementation goes here
        //make sure to ALWAYS return the value
        boolean result = ...
        return result;
    }
}
于 2013-10-11T19:39:39.507 に答える