int size
たとえば、リストのサイズなどが含まれている場合int distance
、mod
操作を行うdistance%size
と、(-size - 1) <= distance <= (size - 1)
つまり、距離は常にこの範囲内になります(-size - 1) <= distance <= (size - 1)
これが正しければ、JDKのCollectionsRotateでの次の条件チェックの意味は何ですか?
if (size == 0)
return;
distance = distance % size;
if (distance < 0)
distance += size;
if (distance == 0) //Why this check????
return;
私はここで間違っているかさびているかもしれませんがdistance
、この時点で追加の結果としてnullになることはないと思います。そして、リストがあったとして0
も、そもそもその条件に到達することはありません。
では、この条件付きチェックが必要ですか?