【发布时间】:2018-04-27 07:44:17
【问题描述】:
这些是程序必须遵循的步骤:
- 请求用户输入 4 位密码。 [完成]
- 将 4 位密码转换为十六进制。 [?]
- 生成两个大于 1000 的随机数并转换为十六进制。[?]
- 将转换后的引脚夹在两个随机转换后的数字之间。 [可以做到]
到目前为止我的代码是:
public static void main(String[] args)
{
int digit = 0;
Scanner scan = new Scanner(System.in);
System.out.println("Please enter a four digit pin:");
digit = scan.nextInt(); // scanning for user input
String Hexpin =Integer.toHexString(digit);
System.out.println(Hexpin);
}
我目前需要帮助将 pin 转换为十六进制并生成两个大于 1000 的随机数并将它们也转换为十六进制。但是,我可以轻松地做三明治。在此之前我尝试搜索答案,但找不到任何其他内容:
C# convert integer to hex and back again
然而,这篇文章将 int 转换为十六进制字符串而不是十进制。
【问题讨论】:
-
// unusual result?- 它有什么不寻常之处? -
编辑:结果并没有异常,只是再次测试,请忽略我之前的评论。
-
如果您所做的只是以十六进制打印数字,最简单的方法是
System.out.printf("%x", digit);。将其“夹在中间”:System.out.println("%x%x%x", before, digit, after);.
标签: java encryption hex