作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我在 Java 网络应用程序中有一个场景,其中必须生成一个随机的十六进制值。这个值应该在我指定的值范围内。 (值的范围可以是十六进制或整数值)。
最有效的方法是什么>我是否必须生成一个随机十进制数,然后将其转换为十六进制?还是可以直接产生一个值?
最佳答案
是的,您只是在您的范围内生成一个十进制值。比如:
Random rand = new Random();
int myRandomNumber = rand.nextInt(0x10) + 0x10; // Generates a random number between 0x10 and 0x20
System.out.printf("%x\n",myRandomNumber); // Prints it in hex, such as "0x14"
// or....
String result = Integer.toHexString(myRandomNumber); // Random hex number in result
十六进制数和十进制数在 Java 中的处理方式相同(作为整数),只是显示或输入方式不同。 ( More info on that .)
关于java-如何生成指定值范围内的随机十六进制值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11094823/
我是一名优秀的程序员,十分优秀!