我有两个十六进制数字说“X”和“Z”。我从用户那里得到一个十六进制输入说'Y'。现在我需要验证值“Y”是否介于“X”和“Z”之间。
这三个数字都是十六进制的。除了将“X”的值增加到“Z”之外,还有什么简单的逻辑可以实现这一点吗?
还请建议我如何在 JAVA 中实现这一点。
问问题
2381 次
3 回答
2
十六进制值是整数- 仅以十六进制而不是十进制表示。
你不能这样做吗?
int upperHex = 0xf7c0;
int lowerHex = 0x040;
int inputHex = 0x050;
if(inputHex <= upperHex && inputHex >= lowerHex)
//Inside the range
于 2013-05-27T08:22:22.603 回答
1
final String X = "00";
final String Z = "ff";
final String Y = "10";
if(Integer.parseInt(X, 16) <= Integer.parseInt(Y, 16) && Integer.parseInt(Y, 16) <= Integer.parseInt(Z, 16)) {
System.out.println("X <= Y <= Z");
}
于 2013-05-27T08:22:24.590 回答
0
数字只是数字,十六进制是该数字的表示(使用文字或字符串)。您可以: 将十六进制字符串转换为整数,然后使用普通比较 ( <= < ...
) 检查输入是否介于两者之间。
于 2013-05-27T08:22:08.987 回答