Question: Sometime when we declare and initialize a variable, say we have an `int i =10;` then after some code this variable would be modified like this code bellow

```
public class reset {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int i = 10;
        int co = 1;
        while (co < 10) {
            i++;
            System.out.println(i + "*" + co + "=" + i * co);
            if (i == 99) {
                i = 11; //line 11
                co++;
            }
        }
    }
}

```

then at some point (here at line 11) we need to re-initialize then variable, wouldn't it be nice if we had any language feature doing it automatically instead for example 

```
reset:i

```

I think it's very beneficial for productivity, isn't it?

Answer: 
The initializer line

```
int i = 10;

```

simply creates byte code instructions to assign the value 10 to the variable. That assignment is no different than any other assignment.

To implement reset, there would need to be an extra bit of metadata kept for each variable to say what the special, initial value is.. That metadata is not currently kept in the symbol table, since there is no concept in Java for a 'initial value'. The additional overhead would trade off against the utility of the reset command.

Might be a good idea, but you can get the same thing by just declaring a constant, and reassigning to the constant.
What about this code? I can understand your question from a starter's perspective, but usually it requires a bit more practice to see why certain constructs are not required:

```
public class NoReset {
    private static final int X_START = 11;
    private static final int X_END = 99;
    private static final int Y_START = 1;
    private static final int Y_END = 9;

    public static void main(String[] args) {
        for (int y = Y_START; y <= Y_END; y++) {
            for (int x = X_START; x <= X_END; x++) {
                final int result = x * y;
                System.out.printf("%d * %d = %d%n", x, y, result);
            }
        }
    }
}

```

Note that you should not nest to many loops, but creating a "hidden loop" is at least as dangerous, it gets very hard to track variables such as `i` within your code.