gpt4 book ai didi

java - 如何生成有界整数?

转载 作者:行者123 更新时间:2023-12-01 19:53:08 24 4
gpt4 key购买 nike

对于 future 的程序,我需要创建一个有界整数类,即 0-59(可用于时间问题)。

我无法让它“环绕”。例如,有界 int = 54 如果我添加 10 它应该是 4

最佳答案

您可以使用取模%运算符

int modulo = 60;
int value = 24;
value = (value + 40) % modulo;
System.out.println(value); // 4
value = (value + 50000) % modulo;
System.out.println(value); // 34
<小时/>

如果您需要类(class),您可以执行以下操作:

class MyIntegerBounded {
private int value;
private int bound;

public MyIntegerBounded(int value, int bound) {
this.value = value;
this.bound = bound;
}

int get() {
return value;
}

void increment() {
add(1);
}

void add(int toAdd) {
value = (value + toAdd) % bound;
}
}

使用:

public static void main(String[] args) throws InterruptedException {
MyIntegerBounded m = new MyIntegerBounded(24, 60);
System.out.println(m.get()); // 24
m.increment();
System.out.println(m.get()); // 25
m.add(40);
System.out.println(m.get()); // 5
}

关于java - 如何生成有界整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50592310/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com