❶ java题: 用户输入一个十进制数,转换成二进制数后输出
import java.util.*;
public class Test {
public static void main(String[] args) {
Scanner san = new Scanner(System.in);
int aint = 0;
System.out.print("请输入一个整数: ");
aint = san.nextInt();
System.out.println(aint + "的二进制内表示容为: " + Integer.toBinaryString(aint));
}
}
❷ JAVA中的十进制如何转换为二进制
十进制转成二进制Integer.toBinaryString(int i) 。
例子专:属
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);
❸ Java中实现十进制转为二进制算法
加一句num /= 2;
❹ JAVA编程,请问怎么将十进制数转换成二进制输出,又怎么将二进制数转换成十进制输出
1、创建java类,TestNumConv.java;
❺ 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中的十进制转换为二进制
public class tobin {
public static void main(String[] args) {
int x = 17;//转换前的十进制数
int num=0;
for(int y=x;y!=0;num++)y=y/2;//计算回转换后二进制数的位数
int[] bin = new int[num];//转换后的答二进制数
for(int i=num-1,y=x;i>=0;i--){
bin[i]=y%2;
y=y/2;
}
for(int i=0;i<num;i++)
System.out.print(bin[i]);
}
}
❼ 编写一个Java程序,将十进制数(double型)转换为二进制数的字符串
double型转二进制字符串涉及到小数部分,没法像Integer那样直接转,底下是一个转换类
publicclassTest{
publicstaticvoidmain(String[]args){
Testt=newTest();
doubled=8;
Strings=t.decimal2BinaryStr(d);
System.out.println("十进制数"+d+"转成二进制数为:"+s);
}
/**
*十进制数转二进制数
*@paramd十进制数
*@return十进制数转换成二进制的字符串
*/
publicStringdecimal2BinaryStr(doubled){
Stringresult=decimal2BinaryStr_Inte(d);
result+=decimal2BinaryStr_Deci(d);
returnresult;
}
/**
*十进制整数部分转二进制数
*@paramd十进制数
*@return十进制整数部分转换成二进制的字符串
*/
publicStringdecimal2BinaryStr_Inte(doubled){
//returnInteger.toBinaryString((int)d);
/*
*本来利用上面的Integer.toBinaryString(int)就可以得到整数部分的二进制结果,
*但为了展示十进制转二进制的算法,现选择以下程序来进行转换
*/
Stringresult="";
longinte=(long)d;
intindex=0;
while(true){
result+=inte%2;
inte=inte/2;
index++;
if(index%4==0){
result+="";
}
if(inte==0){
while(index%4!=0){
result+="0";
index++;
}
break;
}
}
char[]c=result.toCharArray();
char[]cc=newchar[c.length];
for(inti=c.length;i>0;i--){
cc[cc.length-i]=c[i-1];
}
returnnewString(cc);
}
/**
*十进制小数部分转二进制
*@paramd十进制数
*@return十进制小数部分转换成二进制小数的字符串
*/
publicStringdecimal2BinaryStr_Deci(doubled){
returndecimal2BinaryStr_Deci(d,0);
}
/**
*十进制小数部分转二进制
*@paramd十进制数
*@paramscale小数部分精确的位数
*@return十进制小数部分转换成二进制小数的字符串
*/
publicStringdecimal2BinaryStr_Deci(doubled,intscale){
doubledeci=sub(d,(long)d);
if(deci==0){
return"";
}
//为了防止程序因所转换的数据转换后的结果是一个无限循环的二进制小数,因此给其一个默认的精确度
if(scale==0){
scale=(String.valueOf(deci).length()-2)*4;
}
intindex=0;
StringBuilderinteStr=newStringBuilder();
doubletempD=0.d;
while(true){
if(deci==0||index==scale){
while(index%4!=0){
inteStr.append("0");
index++;
}
break;
}
if(index==0){
inteStr.append(".");
}
tempD=deci*2;
inteStr.append((int)tempD);
deci=sub(tempD,(int)tempD);
index++;
if(index%4==0){
inteStr.append("");
}
}
returninteStr.toString();
}
/**
*提供精确的减法运算。
*@paramv1被减数
*@paramv2减数
*@return两个参数的差
*/
publicstaticdoublesub(doublev1,doublev2){
BigDecimalb1=newBigDecimal(Double.toString(v1));
BigDecimalb2=newBigDecimal(Double.toString(v2));
returnb1.subtract(b2).doubleValue();
}
}
❽ 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);
/*