精华内容
下载资源
问答
  • Java 十进制转换十六进制

    热门讨论 2019-12-29 09:31:12
    因为小编能力有限,所以只能做出来0到255之间的十进制数转换为十六进制数。 class HexaDecimal { public static void main(String[] args) { int i1=60;//初始值为60,下文中60均代表i1 int i2=i1&15;//与...

    本文记录小编遇到的一种10进制转换为16进制的一种算法。

    因为小编能力有限,所以只能做出来0到255之间的十进制数转换为十六进制数。

    class HexaDecimal
    {
    	public static void main(String[] args)
    	{
    		int i1=60;//初始值为60,下文中60均代表i1
    		int i2=i1&15;//与4个1相与,得到的结果是60的二进制数的最低四位,其余位数全部舍掉
    		/*
    			String j=“”;//因为定义的是字符串类型,所以在下方都在最后加了一个“”,以将其转换为字符串类型。
    			三元表达表达式:
    			IF(i2>9)  //此时i2的结果是60的低四位二进制数字
    			{//如果i2大于9,就相当于用ABCDEF中的字母来代表
    				//用i2-10再加上‘A'的ASCII,再将其转换为一个字符。
    				//例如:如果i2是14,则14-10+'A'的ASCII=4+65(A的ASCII)=69,
    				//再将69转换为字符,正好得到的是字符'E',E在十六进制中正好是14
    				j=(char)(i2-10+'A')+"";
    			}
    			ELSE
    			{//如果i2不大于9,就是小于等于9
    				j=i2+"";//则直接将数字赋值给j
    			}
    			
    		*/
    		String j=(i2>9)?(char)(i2-10+'A') + "":i2+ "";//如果感觉三元表达式比较复杂,则可以看上方的注释代码。
    		//将i1向右移四位,这样就把刚才计算的四位舍掉,在继续上述的操作。
    		//因为下方的部分都已经重复,这里小编就不在解释第二遍。
    		int temp=i1>>>4;
    		i2=temp&15;
    		String k=(i2>9)?(char)(i2-10+'A')+"" : i2+"";
    		System.out.println(k+""+j);
    	}
    }
    

    这只是小编偶然间遇到的,如果有错误或者理解不正确的地方,还望您指出。

    展开全文
  • public class 十进制转十六进制 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); long dec = sc.nextLong(); sc.close(); String hexString = Long....

    我的第26篇博客

    在这里插入图片描述

    import java.util.Scanner;
    
    public class 十进制转十六进制 {
    
    	public static void main(String[] args) {
    		
    		Scanner sc = new Scanner(System.in);
    		
    		long dec = sc.nextLong();
    		
    		sc.close();
    		String hexString = Long.toHexString(dec).toUpperCase();
    		
    		System.out.println(hexString);
    	}
    }
    
    

    要注意toHexString方法返回的十六进制数中的字母是小写的 需要用toUpperCase方法转换成大写的

    展开全文
  • 思想:十进制转十六进制,只需要将十进制数num&15,然后num右移四位(num>>>4);这里使用查表法,即把‘0’-‘F’放在数组chs中,然后将chs[num&15]的值福遇到新的数组arr或容器StringBuffer中。查表...

    思想:十进制转十六进制,只需要将十进制数num&15,然后num右移四位(num>>>4);这里使用查表法,即把‘0’-‘F’放在数组chs中,然后将chs[num&15]的值福遇到新的数组arr或容器StringBuffer中。查表法可对负数求相应的十六进制。

    精髓:先“与”后“移”。

    class ToHex

    {

    public static void main(String[] args)

    {

    toHex_array(-60);//查表法可以针对负数求其十六进制。

    //System.out.println("Hello World!");

    }

    //非查表法(最普通的方法)。重点在于

    /*

    temp=num&15;

    if(temp>9)

    sb.append((char)(temp-10+'A'));

    else

    sb.append(temp);

    num=num>>>4;

    */

    public static void toHex(int num){

    StringBuffer sb=new StringBuffer();

    int temp;

    for(int i=0;i<8;i++){ //转成8位十六进制

    temp=num&15;

    if(temp>9)

    sb.append((char)(temp-10+'A'));

    else

    sb.append(temp);

    num=num>>>4;

    }

    System.out.print(sb.reverse());

    }

    /*

    **********************下面两种方法都是用查表法进行实现数制转换的*****************************

    */

    //用StringBuffer来存储

    public static void toHex_table( int num){

    char[] chs={'0','1','2','3','4',

    '5','6','7','8','9',

    'A','B','C','D','E',

    'F'};//注意要从‘0’开始!!这样才能满足chs[1]='1'。

    StringBuffer sb=new StringBuffer();

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

    int temp=num&15;

    //System.out.print(chs[temp]);

    sb.append(chs[temp]);

    num=num>>>4;

    }

    System.out.print(sb.reverse());

    }

    //用数组来存储

    public static void toHex_array( int num){

    char[] chs={'0','1','2','3','4',

    '5','6','7','8','9',

    'A','B','C','D','E',

    'F'};//注意要从‘0’开始!!这样才能满足chs[1]='1'。

    char[] arr=new char[8];

    int i=arr.length;

    while(num!=0){

    int temp=num&15;

    arr[--i]=chs[temp];

    num=num>>>4;

    }

    for(int j=i;j

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

    }

    }

    展开全文
  • Java十进制转十六进制

    2021-04-23 20:40:47
  • BigInteger target = new BigInteger("2828718396"); System.out.println(target.toString(16)); System.out.println(Long.toHexString(2828718396l));
  • java十进制转十六进制

    2016-10-20 15:48:15
    public class ToHex {  //10进制转16进制  public static String IntToHex(int n){  char[] ch = new char[20];  int nIndex = 0;  while ( true ){  int m = n/1
  • 因项目需求,这里的16转10进制采用的是一段byte[]数组中存放的16进制批量转换成10进制,如果只是...// 输出结果为65535工具类代码如下:public class StringUtil {/*** 16进制转10进制** @param bytes* @return*/pu...
  • import java.util.Scanner;public class ToHEX{public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请出入一个十进制数");int num = sc.nextInt();toH...
  • // 得到每位都是1的二进制数 int radix = 1 ; int mask = radix - 1; do { buf[--charPos] = digits[i & mask];// 将i值的当前最低shift位的值赋值给声明的字符数组的前一位 i >>>= shift;// i右移...
  • 算法比较简单,辗转相除法,根据除数是否为零来...import java.util.Scanner; /** * Main * * @author 小朝 * @date 2020/3/2 */ public class Main { public static void main(String[] args) { Scanner ...
  • 十进制转二进制class DecToBin{public static void main(String[] args){//System.out.println("Hello World!");long dec = -9223372036854775807l;// -9223372036854775808 这个数不行,不要试,嘿嘿String binStr=...
  • 十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。  给出一个非负整数,将它表示成十六进制的形式。 输入格式  输入包含一.....
  • //10进制转16进制 Integer.toHexString(20); //10进制转2进制 Integer.toBinaryString(10); //16进制转10进制 Integer.parseInt("10", 16); //通用的方法 BigInteger bigInt = new BigInteger(str, int1...
  • 十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。  给出一个非负整数,将它表示成十六进制的形式。 输入格式  输入包含一个...
  • // 得到每位都是1的二进制数 int radix = 1 ; int mask = radix - 1; do { buf[--charPos] = digits[i & mask];// 将i值的当前最低shift位的值赋值给声明的字符数组的前一位 i >>>= shift;// i右移shift位并赋值 } ...
  • 前言 在代码中可能碰到将十进制数据以十六进制字符串的形式输出 需求 在 Socket 通信中,从
  • 直接上代码不废话,快准狠 public static String decimal2Hex(int d) { return String.format("%2s", Integer.toHexString(d& 0xFF)).toUpperCase().replace(' ', '0'); }
  • import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); long a; a=sc.nextLong(); System.out.println(L
  • 2014-05-06 17:34 吴文付最近由于工作上的需要,遇到进制转换的...1、十进制 转 十六进制 二进制://调用java自带的api//测试十进制转16进制 2进制System.out.println("十进制10转16进制为"+Integer.toHexString(10)...
  • JAVA十进制转十六进制(多版本)

    千次阅读 2016-08-07 15:57:04
    1.啥是十六进制,数据的一种表现形式,好处在于可以表现形式更短。 原理:将二进制中4位为一个十六进制位。 2.原来就是对给定的整数进行二进制的每4位的获取 3.咋获取每4位呢?其实就是获取四位中的1,可以通过&...
  • import java.util.Scanner; public class test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Integer a; Scanner s=new Scanner(System.i

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,188
精华内容 875
关键字:

java十进制转十六进制

java 订阅