2013-12-23 37 views
-1

我试图找出如何做这样的事情:Java int'through'int运算符?

int test = 1; 
int test1 = 10; 
if (value = test (though) test1) { 
} 

我已经看了预言Java的运营商,但无法弄清楚如何做到这一点。 构造应检查value是否在testtest1之间。

有谁能告诉我如何在Java中做到这一点?

+3

你是什么试图做什么?你在寻找一个循环? –

+0

用简单英语更好地解释它;) – Lucas

+0

如果玩家库存包含超过最大整数并且他们拿起一个具有相同ID的物品,它会告诉他们他们的库存已满。 – Ryan

回答

3
if (value >= test && value <= test1) 
{ 
    //doSomething 
} 

Java不支持链接的不平等,即test <= value <= test1,所以不是你可以只使用两个布尔表达式,通过布尔和运营商连接,得到一个逻辑上等同条件。

1

你应该尝试一些像逻辑和操作

if (value > test && value < test1) { 
    // do something 
    } 

或添加> =添加等于比较过。

1

看起来你正在寻找很多编程语言中很常见的range运算符,Java并不是其中之一,但是你试图强加给范围的条件总是相同的。你不需要范围检查值,仅仅是终点,因为它是连续的:

if(value > test && value < test1) { 
    // do something 
} 
+0

正是我在找什么。谢谢你,先生。由于目前无法做到这一点,将在10分钟内做出正确答案。 – Ryan

0

有没有在java through运算。你可以用简单的方法做到这一点if

if (value >= test && value <= test1) { 
    // your code 
} 
0

这篇文章恳求澄清。

如果您检查value是测试1和测试2之间,那么你需要:

if(value >= test && value <= test1){ 
    // do stuff 
} 

请注意,您应该删除=迹象,如果value应该是测试和测试1之间严格。

但是,如果你正在检查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 
} 
+0

这是针对那些最终寻找第二种“通过”作为解决方案的人。 – Julio