Java八进制计算

时间:2014-03-30 13:01:13

标签: java octal

对八进制数执行加法减法操作的推荐方法是什么? (到目前为止,我的搜索结果只产生了八度的转换,但没有产生如何对实际八度进行算术运算)。 我的程序将生成2个八进制值,然后加上或减去这些(随机),并给出八进制总数。

例如

 5 Octal + 3 Octal = 10 Octal;
 12 Octal - 3 Octal = 7 Octal;

我尝试过使用:

Integer.parseInt(int, 8), 

但我不清楚如何构建上述结果。我有其余的编程工作,我只是坚持八进制计算。 我是一名全新的编程学生,正在通过Java的艺术与科学工作。 Eric S. Roberts的教科书,这被列为编程练习(第7章,练习3)。

2 个答案:

答案 0 :(得分:3)

你对这个概念有一个基本的误解。算术在数字上执行,而不是在八进制数十进制数十六进制数上执行。

八进制/十进制/十六进制方面仅指书面表示。

您可能知道,要在代码中写入文字八进制值,请在前面加前导零。与写入十六进制值类似,您可以在其前面添加0x

要以八进制打印值,请使用Integer.toOctalString(int)

要解析字符串并将其解释为八进制值,请使用Integer.parseInt(value, radix),并指定8作为基数。

例如,你有两个例子:

int value1 = Integer.parseInt("5", 8);
int value2 = Integer.parseInt("3", 8);

int result = value1 + value2;
System.out.println(Integer.toOctalString(result));

int value1 = Integer.parseInt("12", 8);
int value2 = Integer.parseInt("3", 8);

int result = value1 - value2;
System.out.println(Integer.toOctalString(result));

答案 1 :(得分:1)

您可以使用Integer.toOctalString(int)方法获取数字的八进制表示,如果您的意思是:

System.out.println(Integer.toOctalString(012 - 03));  // 7
System.out.println(Integer.toOctalString(05 + 03));   // 10