1

for ループの外で変数の開始値を初期化できない理由はありますか? 私がこれを行うとき:

    public static void main(String[] args) {

    int userInt = 1;
    int ender = 10;

    for (userInt; userInt < ender; userInt++) {
        System.out.println(userInt);

すでに値 1 を割り当てているのに、userInt に値を割り当てる必要があるという構文エラーが表示されます。代わりにこれを行うと、次のようになります。

public static void main(String[] args) {

    int userInt;
    int ender = 10;

    for (userInt = 1; userInt < ender; userInt++) {
        System.out.println(userInt);

エラーはなくなります。これの理由は何ですか?

4

2 に答える 2

7

Java の一般的な構文for loopは次のとおりです。

for ( {initialization}; {exit condition}; {incrementor} ) code_block;

これは、初期化ブロックに変数名を書き留めることができないことを意味します。すでに定義されている変数を使用したい場合は、空にします。

これはあなたのために働くはずです:

for (; userInt < ender; userInt++) {
        System.out.println(userInt);
}
于 2013-08-14T17:34:24.033 に答える