java api docの次の関数に基づいて、順序が保持されているようです。 s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
私は、hascodeが実際の文字列と同様の順序であることをいくつかの例でテストしました。しかし、私がここで何かを見逃している場合に備えて、他人と確認したいと思っています。Java文字列のコード保存順序とハッシュベースのパーティショニング
その後、hadoopまたはsparkを使用して大きなデータアプリケーションでHashPartitionerまたはOrderPreservingPartitionerを使用するかどうかについての質問です。あなたのキーがちょうどJava Stringの場合、HashPartitionerは順序を保持する必要があります。
ありがとうございました。はい、別の例では、intをオーバーフローさせてハッシュコードがマイナスになり、順序に違反したところで試しました。 – nir