Java&#x27;s decision to privilege &quot;primitive&quot; types was a failure of imagination. They decided they didn&#x27;t want operator overloading but didn&#x27;t make any way to replace it.<p>They should retrofit it as follows:<p><pre><code>  interface Addable&lt;T&gt; {
    T add(T other);
  }
</code></pre>
And then make the + apply to any Addable, which can be defined for the boxed primitives. And so on for the other operators.