如果输出不是十六进制,只是一个字符串,例如 1 的
我想根据特定的输入动态生成字符串 舔这个 如果输入 = 1 ,则字符串输出 =00000
如果它 = 10 ,则输出 =0000a
输入= 16 ,输出 =00010
等等. 生成的字符串是从 0 到 9 的数字和从 A 到 F 的字母 并且所有生成的字符串的字符串长度都是恒定的。
如果输出不是十六进制,只是一个字符串,例如 1 的aaaaa
,
和 2aaaab
。
我假设你犯了一个错误,1
的输出应该是00001
的,输出16
应该是00010
的。
使用String.format
:
public static void main(String[] args) throws Exception {
System.out.println(toHex(0, 5));
System.out.println(toHex(1, 5));
System.out.println(toHex(10, 5));
System.out.println(toHex(16, 5));
}
private static String toHex(int input, int length) {
return String.format("%0" + length + "x", input);
}
输出:
00000
00001
0000a
00010
我能看到的符合您规则的 c# 方面最好的是:
string NumToHex(int num){
if(num == 10)
return num.ToString("x5");
else
return (num-1).ToString("x5");
}