title: Argument calculated every time to be passed in multiple listeners
body: <p>For the following code:</p>
  
  <pre><code>public void execute(Object[] arguments)
  {
    for(MyListener listener : listOfListeners)
    {
      listener.apply(((Double) arguments[0]).longValue());
    }
  }
  </code></pre>
  
  <p>Will the longValue() be called for all the listeners or will JVM optimize this and will calculate only once? In other words: Is the above slower than this:</p>
  
  <pre><code>public void execute(Object[] arguments)
  {
    long id = ((Double) arguments[0]).longValue()
    for(MyListener listener : listOfListeners)
    {
      listener.apply(id);
    }
  }
  </code></pre>