「进制转换Java算法」进制转换java语言代码
今天给各位分享进制转换Java算法的知识,其中也会对进制转换java语言代码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、用JAVA将十进制转换成十六进制
- 2、用java 写一个10进制转16进制的算法 怎么写
- 3、求java进制转换代码
- 4、java编程:进制转换
- 5、Java里的十二进制,六进制,二进制,分别怎么转换?
用JAVA将十进制转换成十六进制
1、用Integer.toHexString方法即可将十进制装成十六进制。
package com.test;
public class Test {
public static void main(String[] args) {
int i = 123;
System.out.println(Integer.toHexString(i));
}
}
2、运行结果如下十进制的123转化成十六进制的7b
3、Integer.toHexString方法返回的结果是字符串。
4、直接表达16进制,在JAVA里面可以在数字前加"0x",像这样
int j = 0x7b;
System.out.println(Integer.decode("0x7b"));
用java 写一个10进制转16进制的算法 怎么写
import java.util.Scanner;
public class TentoSixteen{
private static StringBuilder sum = new StringBuilder();
private static int rulst; //定义一个结果,记录数与15的与运算结果,求得原数二进制最后四位的值
private static int count; //若数的二进制不止四位,定义一个数来记录除去后四位的新数,运用递归作用与rulst相同
private static void TtoSMethod1(int i) { //JDK自带的转化方法
String exchanged = Integer.toHexString(i);
System.out.println(exchanged);
}
private static void Sop() { //将得到的字符串反转
System.out.println(sum.reverse().toString());
}
private static void subim(int rulst) {//判断是否超出10,根据十六进制的规则超出10部分由字母ABCDEF代替
if(rulst10) {
sum.append(rulst);
}else {
sum.append((char)('A'+(rulst-10)));//将int强制转换为char
}
}
private static void TtoSMethod2(int i) {
rulst =i15;
if(i(14)i=0) {//判断数有多少位,大于0小于16,则转换后打直接印
subim(rulst);
}else {//不止四位的数则用递归来多次运算
count=i4;//除去最后四位
subim(rulst);
TtoSMethod2(count);//递归直到count为0止
}
}
public static void main(String []args) {
@SuppressWarnings("resource")
Scanner scan = new Scanner(System.in);
System.out.println("请出入一个十进制数:");
int num = scan.nextInt();
TtoSMethod1(num);//自带方法
TtoSMethod2(num);//自定义方法,可将任意的十进制转化为十六进制
Sop();//输出
}
}
求java进制转换代码
下面是转换的方法
int
n1
=
14;
//十进制转成十六进制:
Integer.toHexString(n1);
//十进制转成八进制
Integer.toOctalString(n1);
//十进制转成二进制
Integer.toBinaryString(12);
//十六进制转成十进制
Integer.valueOf("FFFF",16).toString();
//十六进制转成二进制
Integer.toBinaryString(Integer.valueOf("FFFF",16));
//十六进制转成八进制
Integer.toOctalString(Integer.valueOf("FFFF",16));
//八进制转成十进制
Integer.valueOf("576",8).toString();
//八进制转成二进制
Integer.toBinaryString(Integer.valueOf("23",8));
//八进制转成十六进制
Integer.toHexString(Integer.valueOf("23",8));
//二进制转十进制
Integer.valueOf("0101",2).toString();
//二进制转八进制
Integer.toOctalString(Integer.parseInt("0101",
2));
//二进制转十六进制
Integer.toHexString(Integer.parseInt("0101",
2));
java编程:进制转换
Java中的进制转换是通过基本数据类型类中的相应方法实现的。举个例子:
public class IntegerChange {
public static void main(String[] args) {
String nm = new String("445");
int n = Integer.parseInt(nm);
System.out.println("十进制表示:" + n);
System.out.println("二进制表示:" + Integer.toBinaryString(n));
System.out.println("八进制表示:" + Integer.toOctalString(n));
System.out.println("十六进制表示:" + Integer.toHexString(n));
}
}
输出结果:
十进制表示:445
二进制表示:110111101
八进制表示:675
十六进制表示:1bd
至于八进制转换为十进制,十六进制,二进制等等都有相应的方法,具体的可以查看Java帮助文档。
希望对你有所帮助。
Java里的十二进制,六进制,二进制,分别怎么转换?
转换为2的几何级数倍进制比较容易,其他的就不方便了。
先说和10进制的转换:
倒序将2进制数编幂数,例如10101010从后向前幂数依次为7654321,所以它转换为10进制就是1*2^7+0*2^6+1*2^5+0^2^4+1*2^3+0^2^2+1^2^1+0^2^0=170,这种算法适用于将任意进制转换为10进制,只要将底数替换即可。
下面说2的几何级数倍的算法:
一般就是将2进制按2的级数进行分段,比方说8进制(8是2的3次方),将2进制分为每3位一段进行转换,每段单独按十进制转换即可。
10101010,分为10|101|010,然后每段进行单独转换,10转换后为2,101转换后为5,010转换后为2,所以10101010(2)=252(8)。
其他进制一般算法就是先将2进制转换为10进制,再用短除法转换为其他进制,短除法我记不清怎么个算法了,并不是算公约数之类的那个短除法,借位算法比较特殊,只不过最后余数作为最后一位。
例如170(10)进制就使用170=332(7)
进制转换Java算法的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于进制转换java语言代码、进制转换Java算法的信息别忘了在本站进行查找喔。
发布于:2022-11-22,除非注明,否则均为
原创文章,转载请注明出处。