java计算器十六进制代码_[Java] 一个十进制转十六进制计算器

import java.util.Scanner;

public class HexCalculator {

public static final int HEX = 16;

public static void main(String[] args) {

Scanner in = new Scanner(System.in);

System.out.println("Input a decimal number:");

int value = in.nextInt();

System.out.println(calculate(value));

in.close();

}

public static char[] calculate(int value) {

char[] result;

int numOfBit = 1;

int hex = HEX;

while(hex <= value) {

numOfBit++;

hex *= HEX;

}

int index = 0;

int left = value;

result = new char[numOfBit];

while(numOfBit > 0) {

numOfBit--;

hex /= HEX;

result[index] = calHexBit(left / hex);

left = value % hex;

index++;

}

return result;

}

/**

* @param value from 0 to 15 decimal number.

* @return a char present hex number.

*/

public static char calHexBit(int value) {

switch(value) {

case 10:

return 'A';

case 11:

return 'B';

case 12:

return 'C';

case 13:

return 'D';

case 14:

return 'E';

case 15:

return 'F';

default:

return (char) ('0' + value);

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值