这是接着上面几篇博客的进制转化,这次是比较简单的十进制转十六进制,写Java代码时,以为十几分钟就写好了,结果有很多东西都没有考虑到,所以还是打算以博客的方式记录下来。
转换思路:我们平时进行十进制转其他进制,采用的时除K取余的方法,那这次编码我们也采用这种方法。
编码思路:对十进制数进行多次除十六取余,并把余数用一个String Builder存放起来,当商为0时就停止。然后把String Builder逆序输出,
主要变量: remainder 余数 quotient 商 sixteen String Builder对象存放十六进制数
java编码实现:
import java.util.Scanner;
//十进制转十六进制
public class Main_tentosixteen {
public static void tentosixteen(int number) {
int remainder=number%16; //余数
int quotient=number/16; //商
StringBuilder sixteen=new StringBuilder();
while(quotient!=0){ //主要就是完成除k取余的工作
getParament(remainder,sixteen);
remainder=quotient%16;
quotient=quotient/16;
}
getParament(remainder,sixteen) //注意!当quotient为0时;我们还要将上一次的remainder放入到sixteen字符串中。
int len=sixteen.length();
for(int i=0;i<len;i++)