❶ java怎么用整数转换二进制跟16进制,方法简单点,谢谢
这太简单了
toBinaryString(int i)
以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式。
toHexString(int i)
以十六进制(基数 16)无符号整数形式返回一个整数参数的字符串表示形式。
直接调用这两个方法就可以了。
❷ Java 二进制转换16进制
import java.util.Scanner;
public class Binary2Hex {
private static String hexStr = "0123456789ABCDEF";
/**
*
* @param bytes
* @return 将二进制转换为十六进制字符输出
*/
public static String BinaryToHexString(byte[] bytes){
String result = "";
String hex = "";
for(int i=0;i<bytes.length;i++){
//字节高4位
hex = String.valueOf(hexStr.charAt((bytes[i]&0xF0)>>4));
//字节低4位
hex += String.valueOf(hexStr.charAt(bytes[i]&0x0F));
result +=hex;
}
return result;
}
public static void main(String[] args) {
Scanner sca = new Scanner(System.in);
boolean flag = true;
while (flag) {
System.out.print("请输入一个二进制字符串:");
String str = sca.next();
System.out.println();
System.out.println("您输入的是字符串的十六进制为:"+BinaryToHexString(str.getBytes()));
System.out.print("是否继续转化(如果不继续请输入“exit”,继续的话输入任意字符):");
String _str = sca.next();
if (_str.equalsIgnoreCase("exit")) {
flag = false;
}
}
}
}
❸ 二进制转换成16进制 java string
如果使用jdk提供的方法,示例代码如下:
String str="11111111"; //要转化的二进制码
int i=Integer.parseInt(str,2); //转成10进制
String hex=Integer.toHexString(i); //转成16进制
System.out.println(hex);
❹ 跪求“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扩展阅读:
c语言中二进制的转换:
用函数转换itoa(值,数组名,进制)
#include<stdio.h>
#include<stdlib.h>
voidmain()
{
char str[8];
inti=8;
itoa(i,str,2);
printf("%s",str);
}
❺ java十进制数转换成二进制,8进制以及16进制二进制转十进制
Java程序:
publicclassMain{
publicstaticvoidmain(String[]args){
intnum=1234;
System.out.println("十进制:"+num);
System.out.println("二进制:"+Integer.toBinaryString(num));
System.out.println("八进制:"+Integer.toOctalString(num));
System.out.println("十六进制:"+Integer.toHexString(num));
System.out.println();
Stringstr="10011010010";
System.out.printf("二进制:%s 十进制:%d ",str,Integer.parseInt(str,2));
str="2322";
System.out.printf("八进制:%s 十进制:%d ",str,Integer.parseInt(str,8));
str="4D2";
System.out.printf("十六进制:%s 十进制:%d ",str,Integer.parseInt(str,16));
}
}
运行测试:
十进制:1234
二进制:10011010010
八进制:2322
十六进制:4d2
二进制:10011010010 十进制:1234
八进制:2322 十进制:1234
十六进制:4D2 十进制:1234
❻ java 二进制转16进制
方法1:
中判断mp.length()==1 是判断转换为16进制数后如果是一位数就要在前面补零凑够两位数,从byte数组中一个一个转换后从前往后拼的字符串,如果是一位数就提前补零然后加上转换得到的个位数.
方法2:
中十进制要转换成16进制,如果小于16说明转换后就一位数,(比如15=0E)需要在前面补零凑够二位数,大于16就是二位数
至于为什么要分组,保持位数一致吧,就像月份和时间,一位数的时候都会前面补零凑位数的.整齐规范.