Usually I have seen for loops such as:

```java
for(int i; i < 10; i++) {
   // do something
}

```

What type of for loop is this, and how does it work in Java?

```java
Runtime.getRuntime().addShutdownHook(new Thread(() -> {
            for (RunnableProducer p : runnableProducers) p.shutdown();

```