Java 如何将数字(如int)强制转换为;数字;?

Java 如何将数字(如int)强制转换为;数字;?,java,casting,numbers,Java,Casting,Numbers,这可能是一个基本问题,但我找不到有用的东西 问题是:如何将double或int值转换为Number类型(更具体地说oracle.jbo.domain.Number) 我尝试了以下方法: 用于整数值 int i=9; Integer y=new Integer(i); oracle.jbo.domain.Number num=(oracle.jbo.domain.Number)y; double i=9.5;

这可能是一个基本问题,但我找不到有用的东西

问题是:如何将
double
int
值转换为
Number
类型(更具体地说
oracle.jbo.domain.Number

我尝试了以下方法:

用于整数值

         int i=9;
         Integer y=new Integer(i);
         oracle.jbo.domain.Number num=(oracle.jbo.domain.Number)y;
         double i=9.5;
         Double y=new Double(i);
         oracle.jbo.domain.Number num=(oracle.jbo.domain.Number)y;
对于浮点值

         int i=9;
         Integer y=new Integer(i);
         oracle.jbo.domain.Number num=(oracle.jbo.domain.Number)y;
         double i=9.5;
         Double y=new Double(i);
         oracle.jbo.domain.Number num=(oracle.jbo.domain.Number)y;
但在这两种情况下,我总是遇到不兼容类型错误:

Type 'oracle.jbo.domain.Number' incompatible with 'java.lang.Integer'


如果转换不起作用,那么如何在java中简单地创建
Number
对象

您不需要强制转换它。只需使用类的构造函数

看一看。您可以像这样构造新的
Number
对象:

Number dNumber = new Number(9.5);
Number iNumber = new Number(9);

今天,类
Number
是抽象的。不能实例化。@rplaurindo是否有其他方法?