如何在 java 中创建我自己的数据类型,它将接受从 0 到 1024 的值范围。
我的声明是。
kilobyte a=10;
是否可以?
不,Java 不允许这样做(即创建原语)。但是您可以为此创建自己的课程。
您不能创建自己的原语,但您可以为此创建一个包装器Object
。
这里的脏例子:
// note that class name doesn't follow Java conventions here
public class kilobyte {
private int number;
public kilobyte(Number number) {
if (number == null) {
throw new IllegalArgumentException("argument is null");
}
else if (number.intValue() > 1024 || number.intValue() < 0) {
throw new IllegalArgumentException("argument not within 0 < x < 1024 range");
}
else {
this.number = number.intValue();
}
}
// TODO getter/setter
}
不,您不能创建自己的原始类型,也不能重载运算符,所以这在 java 中是不可能的。