需求:

从序号1开始,每次请求加1,并将序号转为十六进制八字节小头字节序

分析:

初始内容:序号初始值为1

条件:

​ 1.每次请求加1。

​ 2.序号转为十六进制

​ 3.十六进制规则为八字节小头字节序。小头字节序即低字节在前。

编码

1.将数字序号从十进制转为16进制

/*** 10进制转16进制 长度为自定义,满足不同的需求, 0填充* @param serialNum* @return* @author wyc* @date 2022-11-25*/
public static String toHex(Long serialNum, int length) {// String.format("%016x", 1) 将1专程16进制,不足的以0补上 return String.format("%0" + length + "x", Long.valueOf(serialNum));
}

关于String.format()的使用在下篇文章整理

2.将十六进制高低位转换

/*** 十六进制字符串高低位转换* @param hex* @return* @author wyc* @date 2022-11-25*/
public static String reverse(String hex) {final char[] charArray = hex.toCharArray();final int length = charArray.length;final int times = length / 2;for (int c1i = 0; c1i < times; c1i += 2) {final int c2i = c1i + 1;final char c1 = charArray[c1i];final char c2 = charArray[c2i];final int c3i = length - c1i - 2;final int c4i = length - c1i - 1;charArray[c1i] = charArray[c3i];charArray[c2i] = charArray[c4i];charArray[c3i] = c1;charArray[c4i] = c2;}return new String(charArray).toUpperCase();
}

3.调用方法

/*** 得到十六进制的字符串,可指定需要转换的长度** @param serialNum 串行num* @return {@link String}*/
public static String getHexNum(Long serialNum, int length) {return reverse(hex(serialNum, length));
}/*** main测试方法** @param args arg游戏*/
public static void main(String[] args){for(long i = 0; i < 20; i++){System.out.println("十进制:" + i + ",转换后十六进制:" + getHexCardNum(i, 16));}
}

main方法输出结果:

十进制: 0,转换后十六进制:0000000000000000
十进制: 1,转换后十六进制:0100000000000000
十进制: 2,转换后十六进制:0200000000000000
十进制: 3,转换后十六进制:0300000000000000
十进制: 4,转换后十六进制:0400000000000000
十进制: 5,转换后十六进制:0500000000000000
十进制: 6,转换后十六进制:0600000000000000
十进制: 7,转换后十六进制:0700000000000000
十进制: 8,转换后十六进制:0800000000000000
十进制: 9,转换后十六进制:0900000000000000
十进制:10,转换后十六进制:0A00000000000000
十进制:11,转换后十六进制:0B00000000000000
十进制:12,转换后十六进制:0C00000000000000
十进制:13,转换后十六进制:0D00000000000000
十进制:14,转换后十六进制:0E00000000000000
十进制:15,转换后十六进制:0F00000000000000
十进制:16,转换后十六进制:1000000000000000
十进制:17,转换后十六进制:1100000000000000
十进制:18,转换后十六进制:1200000000000000
十进制:19,转换后十六进制:1300000000000000

java基础-十进制转十六进制相关推荐

  1. JAVA:实现十进制转十六进制算法(附完整源码)

    JAVA:实现十进制转十六进制算法 package com.thealgorithms.conversions;// hex = [0 - 9] -> [A - F] class Decimal ...

  2. java:十进制转十六进制

    资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式.它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符 ...

  3. 蓝桥杯试题 基础练习 BASIC-11 十六进制转十进制 JAVA——冲刺蓝桥杯第六天

    目录 前言 试题 基础练习 十六进制转十进制 要点 思路一:常规做法--进制转换 字符 循环 本题代码 思路二:简单做法,使用java自带的方法 本题代码 前言 进制转化包括这篇我写了三篇了,这篇没讲 ...

  4. 【Java基础】十进制转十六进制

    十进制转十六进制 一.将数字序号从10进制转为16进制 二.将16进制转为10进制 三.String.format()说明 3.1 String.format()两个重载方法 3.2 占位符类型 3. ...

  5. 【蓝桥杯】基础练习 十进制转十六进制

    试题 基础练习 十进制转十六进制 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述. 十六进制数是在程序设计时经常要使用到的一种整数的表示方式.它有0,1,2,3,4,5,6,7,8, ...

  6. java 基础进制概述和二,八,十六进制图解

    文章目录 1. 进制数概念 2. Java语言基础(不同进制数据的表现形式)(掌握) 2.2_Java语言基础(任意进制到十进制的转换图解)(了解) 2.3_Java语言基础(十进制到任意进制的转换图 ...

  7. c语言蓝桥十进制转十六进制,蓝桥杯:基础练习 十进制转十六制

    基础练习 十进制转十六进制 时间限制:1.0s   内存限制:512.0MB 问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式.它有0,1,2,3,4,5,6,7,8,9,A,B,C ...

  8. 蓝桥杯 基础练习 十进制转十六进制(水题,进制转换)

    基础练习 十进制转十六进制 时间限制:1.0s   内存限制:512.0MB 问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式.它有0,1,2,3,4,5,6,7,8,9,A,B,C ...

  9. java中各进制之间的转换(十进制转十六进制、十进制转二进制、二进制转十进制、二进制转十六进制)...

    在java编辑中有没有遇到经常需要进行java中各进制之间的转换(十进制转十六进制.十进制转二进制.二进制转十进制.二进制转十六进制)的事情呢?下面我们就来分析一下各自是怎么转换的: [java] / ...

最新文章

  1. 浪潮成立人工智能部门 为AI提供顶尖计算产品
  2. 复杂存储过程学习_对象存储在无人驾驶高精度地图的场景实践
  3. nginx针对某个url限制ip访问,常用于后台访问限制
  4. Atcoder Contest069F:Flag
  5. gridview排序加箭头(二)
  6. MySQL InnoDB count()函数
  7. 敏捷结果:项目开发中的一些想法和疑问
  8. Mac AI技术图像编辑软件:Luminar Neo
  9. 电脑经验小总结(原创)
  10. 织梦 - PHP开源网站管理系统
  11. JAVA实现GMT转换北京时间
  12. 深度学习之CNN卷积神经网络
  13. 程序员必备:Git入门,超详细
  14. 街灯变成了平台,世界将会怎样
  15. exploit-db图文教程
  16. 黑马程序员——java基础之抽象与接口
  17. U-Boot参数设置 .
  18. SFC模拟器coming soon
  19. (附源码)ssm医务志愿者管理系统 毕业设计 100910
  20. centos7安装eclipse方法

热门文章

  1. ctfshow 网络迷踪-哐啷哐啷+鲶鱼之谜
  2. C#中Attribute的应用
  3. 北京工商大学计算机软件技术基础课件,《智能科学与技术专业发展问题》 课件.ppt...
  4. C# 窗体设计中 调用 控制台输出
  5. 深刻理解GPIO(上拉输入、下拉输入、模拟输入、浮空输入,开漏输出,推挽输出的区别,以STM32为例)
  6. WINDOWS 10 多网卡域名解析策略配置方法
  7. 世界上成功人士的励志人生
  8. 【PTA|Python】浙大版《Python 程序设计》题目集:第二章
  9. python-分割线
  10. [数据库]MySQL索引原理和深度优化