如何在java中创建我自己的数据类型,它将接受0到1024之间的值。
我的声明是。
kilobyte a=10;
有可能吗?
答案 0 :(得分:4)
没有。 Java不允许这样(即创建一个原语)。但你可以为此创建自己的类。
答案 1 :(得分:3)
你不能创建自己的原语,但你可以有一个包装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
}
答案 2 :(得分:1)
不,你不能创建自己的原始类型既不会重载运算符,所以这在java中是不可能的。