Ⅰ java中怎么输入二进制数据
Java中Scanner 是输入函数,首先建立一个输入函数,直接读取输入的二进制数据,然后通过Integer.valueOf转换成十进制即可。
Scannerinput=newScanner(System.in);
intlength=input.nextInt();//输入二进制数据
intlength10=Integer.valueOf(length,10)//转换成十进制
Ⅱ Java里,,什么是二进制 什么是base64他们有什么区别
二进制就是逢二进一,而我们习惯的是十进制,就是逢十进一,其实就是平时计数的时候用的符号不一样,十进制是(0~9)10个符号,而二进制只有0和1两个,因为当超过1的时候就会产生进位,比如二进制加法1+1=10(注意不要和十进制的十混淆,这个是二进制一零,等于十进制的二)。
至于base64就是一套加密算法呗,有点类似于数学的某个公式,你把你的数字输入到这个公式就会产生另外一个数字,加密就是把你的信息按照一定的方法转换成别的信息,如果不知道解密方法,是无法理解信息的内容的,大概就是这样的意思。还不理解请追问
Ⅲ 跪求“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
(3)java中二进制扩展阅读:
c语言中二进制的转换:
用函数转换itoa(值,数组名,进制)
#include<stdio.h>
#include<stdlib.h>
voidmain()
{
char str[8];
inti=8;
itoa(i,str,2);
printf("%s",str);
}
Ⅳ java里面二进制怎么表示
java不显示地支持二进制数字,因为二进制的数字比较长,你可以考虑使用八进制或十六进制,这两种转换成二进制都比较方便. 可以用八进制用0开头,比如:012就是十进制的10 十六进制用0x开头,比如:0x12就是十进制的18
Ⅳ 请问java中 二进制,十进制,十六进制,是哪样定义的他们之间怎么转换呢
二进制,0001
只能是0或1.
十进制,123...
1-10之间.
十六进制,123...abcdef
(1-10)+(a-f)之间
十进制"8"转换二进制1000
规律循环对8取模2
循环4次后
得到结果0001,再反过来就是转换后得到的二进制数了.
十进制30转换十六进制0x1d
Integer.toHexString(30);
jdk封装了转换的算法,规律自己去研究吧.
Ⅵ java 如何显示 二进制
java显示二进制,主要是使用基本类型的包装类的tobinaryString类型进行转换,代码如下:
packagecom.qiu.lin.he;
importjava.text.ParseException;
publicclassCeshi{
publicstaticvoidmain(String[]args)throwsParseException{
inti=8;
//使用包装类的toBinaryString转换成二进制
System.out.println(Integer.toBinaryString(i));
}
}
运行结果如下
Ⅶ java二进制的数字与字符串互转
现成的方法,多看api
Ⅷ java的数字二进制输出
首先,java里int是有32位2进制数组成的
我们一般赋值
int
i
=
1;
这个是赋值10进制的数
赋值
2进制要
int
i
=
01;(前面加个0,就表示是2进制数)
赋值16进制(常用)
int
i
=
0x00000001;
(0x表示为16进制数)
3种的值都是1.
要用2进制输出就是Integer.toBinaryString(i)
拓展:
因为计算机处理位运算速度是非常快的(应该是最快的运算)
所以很多时候,如果有一堆boolean变量需要表示时,
一般只用1个int的数表示,如:
int
i
=
0x0000000f;//表示后4位为1
int
m
=
(i
>>
2)
&
1;
//
其中m就是表示某一位的值,2表示右边开始数第2位(当然是从第0位开始算的)
这样就能取具体每一位的值
这种方法在很吃代码效率的程序中经常遇到
全手打,望支持
Ⅸ 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));
}
}
}