我英语不好,所以标题可能会让人困惑。
我要做的事情:
我有一个int数组10, 20, 30
,我想根据number
变量从中获取数字
如果int number = 10;
我希望"方法"的结果是20
如果int number = 21;
我希望结果是30
我不知道该怎么解释,但我希望这是可以理解的。
这是干什么用的?我有一个可以有不同尺寸9, 18, 27, 36, 45, 54
的玩家库存,我有一项内容,例如5
。所以我想要库存大小为9
。如果项目内容大小为19
,则库存大小应为27
,而不是18
。这就是我的问题。
我尝试了很多不同的迭代和计算,但每次尝试都非常失败。我用这个方法从数组中获得最接近的值,但我不知道如何将其更改为四舍五入。
public int getClosestInteger(int value, int[] numbers) {
int distance = Math.abs(numbers[0] - value);
int id = 0;
for (int i = 1; i < numbers.length; i++){
int dist = Math.abs(numbers[i] - value);
if(dist < distance){
id = i; distance = dist;
}
}
return numbers[id];
}
我该怎么做
如果我正确理解你的问题,这应该有效:
public int getClosestInteger(int value, int[] numbers) {
for (int i = 0; i < numbers.length; i++){
if(value < numbers[i]){
return numbers[i];
}
}
}
它应该可以工作。
for (int i = 0; i < numbers.length; i++){
if(numbers[i] > value){
System.out.println(numbers[i]);
break;
}
}