3

toString(32) の目的を解決しようとしています。その使用例として:

private SecureRandom sRandomString = new SecureRandom();

public String newRandomPass() {
    return new BigInteger(70, sRandomString).toString(32);
}

JavaDocs を検索しましたが、まだ答えが見つかりません。私が最も近いのは、この回答からです。

https://stackoverflow.com/a/1356337/1065389

ただし、戻り値「g」が何を意味するのかはまだわかりません。では、 toString(32) は実際に何をするのでしょうか?

4

2 に答える 2

6

指定された基数を持つ BigInteger の文字列表現を返します。たとえば

return new BigInteger("70,10").toString(8);

基数 8 の文字列に変換されているため、"106" が返されます (数字 0 ~ 7 のみ)。

toString()引数のない法線は と同じでtoString(10)、整数を 10 進法に変換します。

"g" が返されるのは、16 進数 (基数 16) の A (10 を表す) のように、"g" が実際には数値 (この場合は 16) としてカウントされるためです。

詳細はこちら: javadoc

于 2013-04-07T20:22:18.817 に答える
3

toString メソッドは、適用先のオブジェクトの値を表す文字列を返します。それを数値に適用すると、オプションの基数パラメーターがあり、どの基数 (base-32 の場合は 2 進数、8 進数、16 進数) を返すかを決定できます。基数が異なる数値を表すさまざまな方法について読む必要があります。

よろしく

于 2013-04-07T20:23:46.267 に答える