十进制转十六进制java
‘壹’ java怎样将已知的10进制数转换为16进制
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请出入一个十进制数");
int x = sc.nextInt();
System.out.println(x+"的十六进制结果是:"+Integer.toHexString(x));
}
}
‘贰’ 可以把java中十进制数用代码直接转为16进制吗
//当然可以:我分两步讲解,两种方法,一个比较简单,利用系统API,一个讲原理稍微复杂一点!
importjava.util.Scanner;
publicclassTohex
{
//录入数字用!
privatestaticScannersc=newScanner(System.in);
//容器,存放转好的数字,也可以不用,也可以用数组!
privatestaticStringBuffersb;
publicstaticvoidmain(String[]args)
{
/*
Integer,这个类功能很强大,是Java提供的,想用可以查询一下;
特点就是简单拿来就用,新手不建议使用,搞懂进制转换原理以后在去使用API事半功倍!
*/
System.out.println(" ==========装16进制!========== 系统API(Integer)演示: ");
init();
}
//方法1,用系统API
privatestaticvoidinit()
{
//十进制!
inta=125454;
//转换过程16进制!
Stringhex=Integer.toHexString(a);
System.out.println(a+"十六进制="+hex+" ------------------------------------ 自定义测试: ");
input();
}
//方法2:自己动手转换,了解转换原理!
privatestaticvoidinput()
{
while(true)
{
System.out.println("输入被转数字: ");
inta=sc.nextInt();
System.out.println("输入想转的进制:暂时支持2,8,16进制");
intb=sc.nextInt();
ToHex(a,b);
}
}
//转换过程!
privatestaticvoidToHex(intx,inty)//a是要转数字,b是进制!
{
sb=newStringBuffer();
inta=x,b=0,c=0;
switch(y)
{
case2:b=1;c=1;
break;
case8:b=7;c=3;
break;
case16:b=15;c=4;
break;
default:break;
}
while(a>0)
{
inttem=a&b;
Strings=tem>9?((char)(tem-10+'A'))+"":tem+"";
sb.append(s);
a=a>>>c;
}
print(sb);//传递打印!
}
//打印!
privatestaticvoidprint(StringBuffersb)
{
System.out.println(" 结果演示:"+sb.reverse()+" 请继续输入测试--->> ");
sb=null;
}
}
‘叁’ 如何用java语言使十进制数转换成十六进制数
输入的时候每一位以空格隔开,以字母结束输入 import java.util.Collections; import java.util.Scanner; import java.util.Stack; public class Translate{public static void main(String[] args){System.out.println(例子:); outPut2(nTo2(inPutN()));}//输入一个多进制数,并存储起来 public static Stack<Integer> inPutN(){Stack<Integer> s=new Stack<Integer>(); System.out.println(多少进制?);
‘肆’ java中怎么将十进制转换为十六进制
用除商取余法
用十进制数除以16 记录下商和余数
然后继续用商去除以16记录下商和余数,直到商为0
最后将余数逆序排列就可以了
比如十进制数33转为十六进制
33/16=2 余1
2/16=0 余2
结果就是0x 21(十六进制以0x开头)
‘伍’ java的十进制怎么转为十六进制
查jdk文档,可以发现在long类里面有这些方法
static String toBinaryString(long i)
以二进制无符号整数形式返回 long 参数的字符串表示形式。
static String toHexString(long i)
以十六进制无符号整数形式返回 long 参数的字符串表示形式。
static String toOctalString(long i)
以八进制无符号整数形式返回 long 参数的字符串表示形式。
如果你自己要写一个程序 实现这个功能,
就是将数字除16取余。。。
‘陆’ java编写十进制转换为十六进制
public class Test {
public static void main(String[] args) {
System.out.println("Dec number 8 to Hex value is: " + convertDecimalToBinary(8));
System.out.println("Dec number 298 to Hex value is: " + convertDecimalToBinary(298));
System.out.println("Dec number 9123 to Hex value is: " + convertDecimalToBinary(9123));
}
public static String convertDecimalToBinary ( int value){
return Integer.toHexString(value);
}
}
-----output
Dec number 8 to Hex value is: 8
Dec number 298 to Hex value is: 12a
Dec number 9123 to Hex value is: 23a3
‘柒’ java中怎么将10进制转化成十六进制
Scanner sc = new Scanner(System.in);
System.out.println("请出入一个十进制数");
int x = sc.nextInt();
System.out.println(x+"的十六进制结果是:"+Integer.toHexString(x));
‘捌’ java 将十进制转换成十六进制字符串
importjava.util.Scanner;
publicclassTentoSixteen{
privatestaticStringBuildersum=newStringBuilder();
privatestaticintrulst;//定义一个结果,记录数与15的与运算结果,求得原数二进制最后四位的值
privatestaticintcount;//若数的二进制不止四位,定义一个数来记录除去后四位的新数,运用递归作用与rulst相同
privatestaticvoidTtoSMethod1(inti){//JDK自带的转化方法
Stringexchanged=Integer.toHexString(i);
System.out.println(exchanged);
}
privatestaticvoidSop(){//将得到的字符串反转
System.out.println(sum.reverse().toString());
}
privatestaticvoidsubim(intrulst){//判断是否超出10,根据十六进制的规则超出10部分由字母ABCDEF代替
if(rulst<10){
sum.append(rulst);
}else{
sum.append((char)('A'+(rulst-10)));//将int强制转换为char
}
}
privatestaticvoidTtoSMethod2(inti){
rulst=i&15;
if(i<(1<<4)&&i>=0){//判断数有多少位,大于0小于16,则转换后打直接印
subim(rulst);
}else{//不止四位的数则用递归来多次运算
count=i>>4;//除去最后四位
subim(rulst);
TtoSMethod2(count);//递归直到count为0止
}
}
publicstaticvoidmain(String[]args){
@SuppressWarnings("resource")
Scannerscan=newScanner(System.in);
System.out.println("请出入一个十进制数:");
intnum=scan.nextInt();
TtoSMethod1(num);//自带方法
TtoSMethod2(num);//自定义方法,可将任意的十进制转化为十六进制
Sop();//输出
}
}