title: Difference between thenAccept and thenApply
body: <p>I'm reading the document on <code>CompletableFuture</code> and The description for <code>thenAccept()</code> is</p>
  
  <blockquote>
    <p>Returns a new CompletionStage that, when this stage completes normally, is executed with this stage's result as the argument to the supplied action. </p>
  </blockquote>
  
  <p>and for <code>thenApply()</code> is </p>
  
  <blockquote>
    <p>Returns a new CompletionStage that, when this stage completes normally, is executed with this stage's result as the argument to the supplied function.```</p>
  </blockquote>
  
  <p>Can anyone explain the difference between the two with some simple examples?</p>