把一个整数转化为它的十六进制数打印出来

it2022-05-05  154

1.问题描述 一个整数 比如300,要求写代码打印它的十六进制数12c 2.问题分析: 这个问题需要解决两个问题,要想知道它的十六进制,首先要给它取16的模,得到它十六进制数的最后一位,然后再除以十六,继续取模,其次就是十六进制数大于9的数用字母来表示,这是一个特殊情况,需要做特殊处理。最后按照这样的顺序计算出来是它相反的顺序,需要再用一个方法将结果倒置,即为最终结果。 注意:Java中的字符相加并不是c中的把它的ascII码值相加,而是进行字符与字符之间的拼接 。

public static void main(String[] args) { int n=300; int num=0; int f=0; String r=""; int i=0; while(n>0) { num=n; f=n/16; if(num>9) { char c=(char)((num-10)+'A'); r+=c; } else r+=num; n=f; } String s1=reverse(r); System.out.println(s1); }

最新回复(0)