我正试图找出如何做的事情:
int test = 1;
int test1 = 10;
if (value = test (though) test1) {
}
我看过oracles java运算符,但无法弄清楚如何做到这一点。
构造应该检查value
和test
之间是否test1
。
有人可以告诉我如何用Java做到这一点吗?
答案 0 :(得分:3)
if (value >= test && value <= test1)
{
//doSomething
}
Java不支持链式不等式,即test <= value <= test1
,因此您只需使用两个布尔表达式(通过布尔运算符和运算符连接)来获得逻辑等效的条件。
答案 1 :(得分:1)
你应该尝试使用逻辑和运算符
if (value > test && value < test1) {
// do something
}
或添加&gt; =添加等于比较。
答案 2 :(得分:1)
看起来你正在寻找在许多编程语言中很常见的range
运算符,Java不是其中之一,但是你试图对该范围施加的条件总是相同的。您不需要检查范围内的每个值,只需检查端点,因为它是连续的:
if( value > test && value < test1 ) {
// do something
}
答案 3 :(得分:0)
Java中没有through
op。您可以使用简单的if
:
if (value >= test && value <= test1) {
// your code
}
答案 4 :(得分:0)
这篇文章要求澄清。
如果您检查value
是否在test1和test2之间,那么您需要:
if(value >= test && value <= test1){
// do stuff
}
请注意,如果=
严格地介于test和test1之间,则应删除value
个符号。
但是,如果您正在检查value
是从test0“到”test10“的多个测试之一,那么将这些测试打包在一个集合中并检查值是否在其中:
import java.util.*;
Set tests = new HashSet();
tests.add(test);
tests.add(test1); // similarly for as many as you need
if(tests.contains(value)){
// do stuff
}