How the tailmap method get the sortedmap from the input treemap?
<p>The treemap has a method, tailmap to get a sortedmap which the key no less than the fromkey.
After trace the source code, I found the tailmap finish the work in the constuct method of NavigableSubMap.
here is the code.</p>

<pre><code>NavigableSubMap(TreeMap&lt;K,V&gt; m,
                        boolean fromStart, K lo, boolean loInclusive,
                        boolean toEnd,     K hi, boolean hiInclusive) {
            if (!fromStart &amp;&amp; !toEnd) {
                if (m.compare(lo, hi) &gt; 0)
                    throw new IllegalArgumentException("fromKey &gt; toKey");
            } else {
                if (!fromStart) // type check
                    m.compare(lo, lo);
                if (!toEnd)
                    m.compare(hi, hi);
            }

            this.m = m;
            this.fromStart = fromStart;
            this.lo = lo;
            this.loInclusive = loInclusive;
            this.toEnd = toEnd;
            this.hi = hi;
            this.hiInclusive = hiInclusive;
        }
</code></pre>

<p>after the step of this.toEnd = toEnd; the NavigableSubMap class has the tailed map. 
how it finished this?</p>
