在java中减去base 3中的两个数字

时间:2017-08-20 03:18:16

标签: java math int integer-arithmetic

这里发生了什么?我试图在基本3系统中减去两个整数。

int x=222211;
int y=112222;

String result = Integer.toString(x-y,3);

,结果为109989 但答案应该是102212

很明显,图书馆并没有做我认为它做的事情 - 我得到的结果是该减法的基础10结果。将此结果转换为base 3会给我一个非常不正确的结果

1 个答案:

答案 0 :(得分:2)

这很令人尴尬,但是在发布这篇文章后我发现了几秒......但也许这会帮助其他人。

int x = Integer.parseInt("222211",n);
int y = Integer.parseInt("112222",n);

String result = Integer.toString(x-y,n);

预先将数字转换为适当的基数