导航:首页 > 编程语言 > java进制转换函数

java进制转换函数

发布时间:2023-03-28 06:46:14

『壹』 java实现:整数进制相互转换

java实现:整数进制相互转换的方法:

  1. 十进制转为二进制、八进制、十六进制, 用 Integer.toXXXString()方法

    (1)十进制转为二进制: Integer.toBinaryString(int i);

    public static String toBinaryString(inti):以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式。

    (2)十进制转为8进制 :Integer.toOctalString(int i);
    public static String toOctalString(inti):以八进制(基数 8)无符号整数形式返回一个整数参数的字符串表示形式。

    (3)十进制转为16进制: Integer.toHexString(int i);

    public static String toHexString(inti):以十六进制(基数 16)无符号整数形式返回一个整数参数的字符串表示形式。

举例:

Stringbin=Integer.toBinaryString(10);
Stringoct=Integer.toOctalString(10);
Stringhex=Integer.toHexString(10);

2.十六进制、八进制、二进制转为十进制(有两种方法):parseInt() 和valueOf()。

Integer.parseInt(String s,int radix);

public static int parseInt(String s,int radix) throws NumberFormatException{}使用第二个参数作为指定的基数,将字符串参数解析为有符号的整数;

Integer.valueOf(String s,int radix);

public static Integer valueOf(Strings, intradix) throws NumberFormatException{}返回一个 Integer 对象,该对象中保存了用第二个参数提供的基数进行解析时从指定的 String 中提取的值。

举例:

try{
inti=Integer.parseInt("a",16);
//输出为10进制数10
System.out.println(i);
}catch(Exceptione){
e.printStackTrace();
}
try{
//十六进制转成十进制
Stringhex=Integer.valueOf("FFFF",16).toString();
System.out.println(hex);
//八进制转成十进制
Stringoct=Integer.valueOf("12",8).toString();
System.out.println(oct);
//二进制转十进制
Stringbin=Integer.valueOf("0101",2).toString();
System.out.println(bin);
}catch(Exceptione){
e.printStackTrace();
}

『贰』 java中怎么将十进制转换为十六进制

用除商取余法
用十进制数除以16 记录下商和余数
然后继续用商去除以16记录下商和余数,直到商为0
最后将余数逆序排列就可以了
比如十进制数33转为十六进制
33/16=2 余1
2/16=0 余2
结果就是0x 21(十六进制以0x开头)

『叁』 用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));
}
}

『肆』 跪求“java中二进制怎么表示”

java中二进制的表示:

1、Java中定义两个数,然后分别打印出它们的二进制表示(例如7和-7):

System.out.println("Java二进制7:"+Integer.toBinaryString(7));

System.out.println("Java二进制-7:"+Integer.toBinaryString(-7));

输出:

Java二进制7: 111

Java二进制-7:

7的二进制就是111

-7转化二进制的过程:

(1)把-7转化成7,二进制是 111

(2)Java中对于不满32位的int二进制自动补齐,所以变成了 (29个0)111

(3)然后取反 (29个1)000

(4)然后加1 (29个1)001

(4)java进制转换函数扩展阅读

一、二进制的表示方法

有0,1组成。以0b开头。

代码的表示方法:

System.out.println(0b100)

二、不同进制的数据表现:

八进制:由0,1,....,7.以0开头。

十进制:由0,1......,9.默认整数。

十六进制:由0,1,......9,a,b,c,d,e,f(大小写均可)组成。

十进制:System.out.println(100);

八进制:System.out.println(0100);

十六进制: System.out.println(0x100);

『伍』 JAVA编程,请问怎么将十进制数转换成二进制输出,又怎么将二进制数转换成十进制输出

1、创建java类,TestNumConv.java;

『陆』 java中如何将字符串转换为二进制数

方法一:开始,运行,输入cmd,再输入“systemInfo”,拉到上面看“系统类型”,X86的是32位机,64位的是X64(不过,系统是64位的,此处才显示64位)。如果你的系统是64位的,会在“OS?名称:?MicrosoftXP?Professional”一行后明确标示出“x64?Edition”,否则你的系统就是32位的。?
方法二:在开始>运行中输入“winver”,如果你的系统是64位的,同样会明确标示出“x64?Edition”。?
方法三:查看“控制面板”中的“系统属性”?
单击“开始”,然后单击“运行”。键入?sysdm.cpl,然后单击“确定”。单击“常规”选项卡。操作系统显示如下:?
对于?64?位版本的操作系统:“系统”下将显示?Windows?XP?Professional?x64?Edition?版本?<?Year>。?
对于?32?位版本的操作系统:“系统”下将显示?Windows?XP?Professional?版本?<?Year>。?注意<Year>?是一个表示年份的占位符。?方法?四:查看“系统信息”窗口?
单击“开始”,然后单击“运行”。键入?winmsd.exe,然后单击“确定”。?
当导航窗格中已选择“系统摘要”,找到“详细信息”窗格中“项目”下的“处理器”,然后记下该值。?
如果“处理器”对应的值以“x86”开头,表明该计算机运行的是?32?位版的?Windows?操作系统
如果“处理器”对应的值以“ia64”或“AMD64”开头,表明该计算机运行的是?64?位版的?Windows?操作系统?
右键打开我的电脑属性,没有“物理地址扩展”的是32位,有“物理地址扩展”的是64位如果这个方法无效,请尝试其他方法。

『柒』 JAVA如何将10进制的int转成16进制的int

使用java.math.BigInteger,

构造函数BigInteger(String val, int radix) :将指定基数的 BigInteger 的字符串表示形式转换为 BigInteger。

new BigInteger("", 16).toString()即可

『捌』 java十进制转二进制的代码是什么

import java.math.BigDecimal;
public class Test {
public static void main(String[] args) {
Test t = new Test();
double d = 8;
String s = t.decimal2BinaryStr(d);
System.out.println("十进制数"+d+"转成二进制数为:"+s);
}
/**
* 十进制数转二进制数
* @param d 十进制数
* @return 十进制数转换成二进制的字符串
*/
public String decimal2BinaryStr(double d){
String result = decimal2BinaryStr_Inte(d);
result += decimal2BinaryStr_Deci(d);
return result;
}

/**
* 十进制整数部分转二进制数
* @param d 十进制数
* @return 十进制整数部分转换成二尺凯进制的字符串
*/
public String decimal2BinaryStr_Inte(double d){
// return Integer.toBinaryString((int)d);
/*

『玖』 java中如何将十进制数字转化成二进制

如果表达小于2^31-1的正数代码如下:

public void binaryToDecimal(int n){

int t = 0; //用来记录位数

int bin = 0; //用来记录最后的二进制数

int r = 0; //用来存储余数

while(n != 0){

r = n % 2;

n = n / 2;

bin += r * Math().pow(10,t);

t++;

}

System.out.println(bin);

}

使用字符串的拼接(+)来实现大于2^31-1的数,代码如下:

public void binaryToDecimal(int n){

String str = "";

while(n!=0){

str = n%2+str;

n = n/2;

}

System.out.println(str);

}

可以右移后再与0x01进行&运算得到第一位的数字判断判断它的第几位上是0,第几位上是1,代码如下:

class ByteMove

{

public static void main(String[] args)

{

int i = 7;

move(i);

}

static void move(int num){

for(int i= 0;i<6;i++){

System.out.println("第"+(i+1)+"位:" + (num >> i & 0x01));

}

}

}

『拾』 用java写一个进制转换的函数: convert(int n ):输入一个十进制数n,将它转换成R进制数输出。

将十进制数裂禅N转换为r进制的数,其转换方法利用辗转相除法:以N=3456,r=8为例转换
以下是核心代码,如果需要完整源文件的,留个邮箱给我。
package src;

import javax.swing.JOptionPane;

public class NumberConvert {
public static void main(String args[])
{
LinkedStack<String> stack = new LinkedStack<String>(); //创建空栈
String inputstr;
char charremainder;
int sourcedecimalnumber,conversion,remainder,business;
do
{
try
{
inputstr=JOptionPane.showInputDialog("请输入你空悔需要转换的十进制数:");
sourcedecimalnumber=Integer.parseInt(inputstr);
break;
}
catch (NumberFormatException exception)
{
JOptionPane.showMessageDialog(null,"请输入数字(十进制数)!","提示信息",0);
}
}while(true);

do
{
try
{
do
{
inputstr=JOptionPane.showInputDialog("请输入你需要转换进制(2~16之间的进制数):");
conversion=Integer.parseInt(inputstr);
if (conversion>1 && conversion<17)
break;
else
JOptionPane.showMessageDialog(null,"请输入2~16以内的数字!","提示信息",0);
}while (true);
break;
}
catch (NumberFormatException exception)
{
JOptionPane.showMessageDialog(null,"请输入数字(所要斗源正转换的进制数)!","提示信息",0);
}
}while(true);

business=sourcedecimalnumber;
while(business!=0)
{
remainder=business%conversion;
if(remainder>9)
remainder+=55;
else
remainder+=48;
charremainder=(char)remainder;
char [] chararray={charremainder};
stack.push(new String(chararray));
business/=conversion;
}

while(!stack.isEmpty())
{
System.out.print(stack.pop());

}
}
}

阅读全文

与java进制转换函数相关的资料

热点内容
u盘文件给删了 浏览:737
vuejsoauth2 浏览:78
2017微信支付日 浏览:81
机械臂编程如何开发 浏览:21
标书U盘PDF文件要不要签字 浏览:222
ps软件文件复制到d盘 浏览:148
一般工业固废招标文件内容 浏览:583
网站建设报价怎么算 浏览:66
三星a7000升级安卓502 浏览:486
word2010清除分隔符 浏览:781
乐视怎么切换网络 浏览:425
cad打印pdf文件名称与cad不一致 浏览:815
电气与可编程控制是什么 浏览:67
文件名中允许使用英文竖线吗 浏览:531
编程猫在哪里 浏览:775
win8共享文件夹访问权限 浏览:380
cad文件显示为只读不能保存怎么办 浏览:703
如何在系统里忘记网络 浏览:24
中小企业出口数据在哪里找 浏览:715
win8和xp传文件 浏览:75

友情链接