title: Remove element with duplicate property based on another property from list using java 8
body: <p>I'm struggling to reduce a list :</p>
  
  <p>Let's say I have a <code>List&lt;Item&gt; listItems</code> with an <code>Item</code> class defined such as :</p>
  
  <pre><code>public class Item {
      private String effect;
      private String value;
  
      public String getEffect() {
          return effect;
      }
  
      public void setEffect(String effect) {
          this.effect = effect;
      }
  
      public String getValue() {
          return value;
      }
  
      public void setValue(String value) {
          this.value = value;
      }
  }
  </code></pre>
  
  <p>Now, in my <code>listItems</code> list, I have some elements with the same <code>effect</code> property.</p>
  
  <p>I want to remove all element from my <code>listItems</code> list with the same <code>effect</code> property except the one with the higher <code>value</code> property. (<code>value</code> is number represented as a <code>String</code>).</p>
  
  <p>Also, I wanna keep all the element with an unique <code>effect</code> property.</p>
  
  <p>How can I achieve that ? I guess I'm gonna have to deal with <code>Comparator</code>.</p>