Java では、次のように aBigInteger
から aを取得できます。String
public static void main(String[] args) {
String input = "banana";
byte[] bytes = input.getBytes(StandardCharsets.UTF_8);
BigInteger bigInteger = new BigInteger(bytes);
System.out.println("bytes: " + Arrays.toString(bytes));
System.out.println("bigInteger: " + bigInteger);
}
どちらが印刷されますか
bytes: [98, 97, 110, 97, 110, 97]
bigInteger: 108170603228769
big-integer ライブラリを使用して、JavaScript で同じ結果を得ようとしています。しかし、ご覧のとおり、このコードは別の値を返します。
var bigInt = require('big-integer');
function s(x) {
return x.charCodeAt(0);
}
var bytes = "banana".split('').map(s);
var bigInteger = bigInt.fromArray(bytes);
console.log("bytes: " + bytes);
console.log("bigInteger: " + bigInteger);
出力:
bytes: 98,97,110,97,110,97
bigInteger: 10890897
JavaScript を使用して Java で取得した結果を取得する方法はありますか? また、配列の長さが 32 の場合も可能でしょうか?