2014-10-31 82 views
1

此问题看起来很愚蠢,但不是真的。型类java.math.BigDecimal的 无法将1类oracle.jbo.domain.NumberOracle ADF:无法将类java.math.BigDecimal的类型1转换为类oracle.jbo.domain.Number

如何转换

  1. oracle.jbo.domain.Number into java.math.BigDecimal
  2. java.math.BigDecimal into oracle.jbo.domain.Number

我得到的答案第一名:

oracle.jbo.domain.Number value = (Number)valueChangeEvent.getNewValue(); 
java.math.BigDecimal costOfBuildingValue = value.bigDecimalValue(); 

二号?

回答

1

您可以用数字的String表现在两个方面:

oracle.jbo.domain.Number number = new oracle.jbo.domain.Number(12345); 
BigDecimal bigDecimal = new BigDecimal(number.toString()); 

,反之亦然:

BigDecimal bigDecimal = new BigDecimal(1241241); 
oracle.jbo.domain.Number number = new oracle.jbo.domain.Number(bigDecimal.toString()); 

更好的是,如果你签出javadoc,你会看到有一个Number(BigDecimal bigDecimal)构造:

BigDecimal bigDecimal = new BigDecimal(1241241); 
oracle.jbo.domain.Number number = new oracle.jbo.domain.Number(bigDecimal); 

请注意,我用的oracle.jbo.domain.Number完全合格的类名,以避免与java.lang.Number界面混乱。

1

创建一个新的Number如下:

BigDecimal value = new BigDecimal(...); 
Number costOfBuildingNumber = new Number(value); 
相关问题