У меня есть два байтовых массива, которые я пытаюсь добавить, используя
BigInteger n1=new BigInteger(byte[] a1);
BigInteger n2=new BigInteger(byte[] a2);
BigInteger sum=a1.add(a2);
byte[] as=sum.toByteArray();
Вот что я получил:
a1=4A4A3E502602CE0C3D1792D5A2C6BADFE701E5C668FBE1D92F19923CD2A5143B
a2=FFE735AE9FB702A6C08D3ED57CB6CCF7CBB74F6F8D3F820A837A9775AF953F0D
as=4A3173FEC5B9D0B2FDA4D1AB1F7D87D7B2B93535F63B63E3B29429B2823A5348
Глядя на самый значимый байт, добавление 0x4Aи 0xFF генерирует потерянный перенос.Я ожидаю, что добавление двух 32-байтовых целых чисел приведет к 33-байтовому целому числу (в этом случае, поскольку есть перенос).