问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

用JAVA把二进制数转换成十进制数。

发布网友 发布时间:2022-04-22 15:44

我来回答

5个回答

热心网友 时间:2023-07-12 17:32

一楼回答的非常详尽了哈,

就是感觉太多了,

个人觉得,比较常用的就是Integer的parseInt()方法,

使用起来也非常方便:

int  a = Integer.parInt("你的二进制数", 2);

热心网友 时间:2023-07-12 17:32

二进制转十进制

Integer.valueOf("0101",2).toString()

import java.util.Scanner;

public class Test {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

System.out.println("输入一个二进制数: ");

String a = sc.nextLine();

int d = Integer.parseInt(a, 2); // 2进制

int o = Integer.parseInt(a, 8); // 8进制

System.out.println("二进制转为十进制: " + d);

System.out.println("八进制转为十进制: " + o);

计算机内部使用二进制表示数

二进制与十进制的转换是比较复杂的。比如我们要让计算机计算50+50=?,那么首先要把十进制的50转换成二进制的“50”——110010,这个过程要做多次除法,而计算机对于除法的计算是最慢的。把十进制的50转换成二进制的110010还不算完,计算出结果1100100之后还要再转换成十进制数100,这是一个做乘法的过程,对计算机来说虽然比除法简单,但计算速度也不快。

以上内容参考:百度百科-十进制

热心网友 时间:2023-07-12 17:33

Integer.valueOf("0101",2)

热心网友 时间:2023-07-12 17:34

public class JinZhiZhuanHua {

public static void main(String[] args) {

//使用查表法将十进制转换为二进制、八进制、十六进制

int num=60;

toBin(num);

tooct(0);

toHex(60);

   }

//转换为二进制

public static void toBin(int num){

conversion(num,1,1);

}

//(转换为八进制

public static void tooct(int num){

conversion (num,7,3);

}

//转换为十六进制

public static void toHex(int num){

conversion (num,15,4);

}

//转换

public static void conversion(int num, int diwei, int yiwei) {

     //如果num等于0,结果输出为0

if (num==0){

System.out.println("num="+0) ;

return;

}

//定义一个包含二进制、八进制、十六进制的表

char[] chs={'0','1','2','3','4','5','6','7','8','9',

'A','B','C','D','E','F',};

//定义一个临时容器

char[] arr=new char[32];

//定义一个操作数组的指针

int pos=arr.length;

//利用与低位最大值的方式取出低位,存到临时数组中

while(num!=0){

arr[--pos]=chs[num&diwei];//--pos倒著往临时容器里存

num >>=yiwei;//无条件右移相应位数

}

//打印转换后的结果

for( int x=pos;x<arr.length; x++)

System.out.print(arr[x]);

//换行

System.out.println();

}

}

希望对您有所帮助!~

热心网友 时间:2023-07-12 17:34

十进制转成十六进制:
Integer.toHexString(int i)
十进制转成八进制
Integer.toOctalString(int i)
十进制转成二进制
Integer.toBinaryString(int i)
十六进制转成十进制
Integer.valueOf("FFFF",16).toString()
八进制转成十进制
Integer.valueOf("876",8).toString()
二进制转十进制
Integer.valueOf("0101",2).toString()

有什么方法可以直接将2,8,16进制直接转换为10进制的吗?
java.lang.Integer类
parseInt(String s, int radix)
使用第二个参数指定的基数,将字符串参数解析为有符号的整数。
examples from jdk:
parseInt("0", 10) returns 0
parseInt("473", 10) returns 473
parseInt("-0", 10) returns 0
parseInt("-FF", 16) returns -255
parseInt("1100110", 2) returns 102
parseInt("2147483647", 10) returns 2147483647
parseInt("-2147483648", 10) returns -2147483648
parseInt("2147483648", 10) throws a NumberFormatException
parseInt("99", throws a NumberFormatException
parseInt("Kona", 10) throws a NumberFormatException
parseInt("Kona", 27) returns 411787

进制转换如何写(二,八,十六)不用算法
Integer.toBinaryString
Integer.toOctalString
Integer.toHexString

例二

public class Test{
public static void main(String args[]){

int i=100;
String binStr=Integer.toBinaryString(i);
String otcStr=Integer.toOctalString(i);
String hexStr=Integer.toHexString(i);
System.out.println(binStr);

}

例二
public class TestStringFormat {
public static void main(String[] args) {
if (args.length == 0) {
System.out.println("usage: java TestStringFormat <a number>");
System.exit(0);
}

Integer factor = Integer.valueOf(args[0]);

String s;

s = String.format("%d", factor);
System.out.println(s);
s = String.format("%x", factor);
System.out.println(s);
s = String.format("%o", factor);
System.out.println(s);
}
}

其他方法:

Integer.toHexString(你的10进制数);
例如
String temp = Integer.toHexString(75);
输出temp就为 4b

//输入一个10进制数字并把它转换成16进制
import java.io.*;
public class toHex{

public static void main(String[]args){

int input;//存放输入数据
//创建输入字符串的实例
BufferedReader strin=new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入一个的整数:");
String x=null;
try{
x=strin.readLine();
}catch(IOException ex){
ex.printStackTrace();
}
input=Integer.parseInt(x);
System.out.println ("你输入的数字是:"+input);//输出从键盘接收到的数字

System.out.println ("它的16进制是:"+Integer.toHexString(input));//用toHexString把10进制转换成16进制
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...示意图,请据图回答 (1)桃花结构中的雌蕊包括图中的[ ]___百度知 ... 下图是桃花的结构示意图。 (1)图中___构成雌蕊;花粉在___中。(2)此... 如图是桃花的结构示意图,下列叙述错误的是( )A.⑤能发育成种子B.花粉... 商标注册哪家更优惠些? 如何读懂名著《西游记》 除了原著你还可以通过以下方式读懂西游 oppo手机正在运行的程序怎么关闭 oppo手机正在运行的程序怎样关闭_百度... “练色亭皋月”的出处是哪里 “壶清迷练色”的出处是哪里 “泻瓯如练色”的出处是哪里 “练色泓澄玉清水”的出处是哪里 canf(&quot;#d#d&quot;,&a,&b);为什么我需要输入三个数字才会运行程序呢? JAVA中的System.out.printf(&quot;乘法是孙子新增的功能,%d*%d等于%d&#92;n&quot;,a,b,sunzi.multi(a,b));是什么意思 在java语言中,下列代码输出的结果是 java怎么格式化输出数字 令人伤透脑筋的java 输出控制符到底怎么用 java中用print函数的输出问题。 java中( %d + %d = %d\n , x, y, nSum)是什么意思 java里面的%d*%d=%2d是什么意思? java中%d %s的含义 在Java里面%d*%d=%2d是什么意思啊? java的%d和%f 是什么意思 谁能给我讲讲java中%d的具体用法? java中%d\n啥意思? 煤气罐、煤气灶开关的先后顺序? 餐饮燃气灶的点火方法 关煤气灶的正确方法是 煤气灶的使用步骤 怎样打开煤气灶 怎样开煤气做饭 煤气灶开关的先后顺序 在java中,System.out.printf(&quot;%d,%d&#47;t&quot;,i,j);中的&#47;t表示什么 java中如何知道一个整型的长度 java中使用System.out.println如何输出多个变量? java这段话为什么报错? 气球里面的氢气是怎么吹进去的 男生自考电子商务好考吗 气球里面是氢气还是氦气? 电子商务考试难吗 小孩玩的气球是氢气还是氦气? 浙江自考本科电子商务难吗?选考要全部考吗? 自考电子商务专业通过率高吗? 气球里面是氢气还是氦气 电子商务专业怎么样,自考难不难,好久能拿证 农业大学自考本科电子商务容易吗? 充氢气球的氢气哪里买? 自学考试难不难?有什么好专业推荐吗? 气球为什么很少用氢气? 气球充氢气还是氦气好? 自考电子商务实践是怎么考试的哦,一次全过吗? 氢气球里面的氢气如何制作呢??