首页 > 代码库 > java中的进制转换

java中的进制转换

                                   进制转换

首先是十进制转化为其他进制,如二进制,八进制,十六进制:

它们在java中都有专门的函数可供调用:

如:十进制转化为二进制时调用toBinaryString();

        十进制转化为八进制时调用toOctalString();

        十进制转化为十六进制时调用toHexString();

代码实现:

// 进制转化
public class Main_2 {
	public static void main(String[] args)
	{
		Integer a=new Integer(20);
		// 十进制转化为二进制
		System.out.println(Integer.toBinaryString(a));
		// 十进制转化为八进制
		System.out.println(Integer.toOctalString(a));
		// 十进制转化为十六进制
		System.out.println(Integer.toHexString(a));
	}
}

这只是将十进制转化为特殊进制,我要是想把十进制数转化为一般进制如三进制,五进制,那怎么办呢?

不用担心,API里还有一个函数,就是专门用于将十进制转化为任何进制的:Integer.toString(int i,int radix);

代码实现:

// 进制转化
public class Main_2 {
	public static void main(String[] args)
	{
		// 将十进制转化为任何进制的函数的应用
		// 表示将a转化为二进制
		System.out.println(Integer.toString(a,2));
		// 表示将a转化为三进制
		System.out.println(Integer.toString(a,3));
	}
}
下面我们再来看,如何将其他进制数转化为十进制数呢?

要想将其他进制数转化为十进制数也很简单,直接调用parseInt(String,radix);函数即可:

代码实现:

// 进制转化
public class Main_2 {
	public static void main(String[] args)
	{
		// 其他进制转化为十进制
		// 前面的字符串表示的是其他进制的数据,后面的数表示前面字符串表示的是具体是几进制的数
		// 如2表示二进制数,3表示进制的数,最终输出结果表示的是转化成的十进制数
		System.out.println(Integer.parseInt("110",2));
	}
}


最后说一下基本数据类型对象与基本数据类型值之间的互换

有两种方式:由于都比较简单,所以直接看代码:

public class Main_2{
	public static void main(String[] args)
	{
		// 第一种转换方式
		Integer i=new Integer(34);
		int num=i.intValue();
		System.out.println(num+1);
		// 第二种转换方式
		Integer j=new Integer("345");
		int m=j.intValue();
		System.out.println(m+1);
	}
}