2014-10-31 74 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); 
相關問題