gpt4 book ai didi

Java:如何限制可以传递给方法的参数值

转载 作者:搜寻专家 更新时间:2023-10-31 19:27:38 25 4
gpt4 key购买 nike

假设我有一个方法接受一个 int 作为参数,

假设该方法只需要值 0、1、2不是其他 int

有没有办法“强制”该方法只接受 0、1、2?

最佳答案

您必须创建一个只能采用值 012 的自定义数据类型。您不能使用普通的 int

在这种情况下,您可以使用枚举:

enum ZeroOneOrTwo {
ZERO(0),
ONE(1),
TWO(2);
public final int val;
private ZeroOneOrTwo(int val) {
this.val = val;
}
}

并按如下方式使用它:

void myMethod(ZeroOneOrTwo arg) {
System.out.println("Int value: " + arg.val);
}

如果你被迫接受一个 int 作为参数(如果你正在实现一个接口(interface))你可以求助于抛出一个 IllegalArgumentException 如果给定值超出范围。但通常您希望让编译器捕获问题,而不是在运行时处理它。

关于Java:如何限制可以传递给方法的参数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28658400/

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