IBM FileNet P8, 5.2.1 版            

隱含的轉換

在執行時期,特定資料類型組合會發生表示式結果的隱含轉換。

例如,如果整數表示式是指定為 Float 類型之資料欄位的起始值,則會發生隱含的轉換。 請注意,在表示式內,不會有字串值到時間值的隱含轉換;您必須使用 convert 函數或 stringtotime 函數,才能將字串值明確轉換成時間值。

在複式表示式內,發生隱含的轉換會使引數的資料類型符合運算子或函數的需求。 例如,substr 函數會對開始位置和長度引數使用整數值。 如果您指定浮點值 2.5 和 1.0 作為那些引數,它們會在評估表示式之前隱含地轉換成整數值 2 和 1。

在執行時期,下列資料類型組合會發生隱含的轉換:

浮點到整數

浮點數字小數點右邊的所有數字會被截斷。 例如,如果您指定 123.4567 作為某整數資料欄位的起始值,當起始設定時,該資料欄位的值會設為 123。

註: 浮點到整數的轉換不會發生在陣列資料欄位的起始設定中。 對整數陣列(不論是作為簡式或複式表示式)指定的所有元素必須是整數值。 例如,如果您對整數陣列資料欄位指定起始值,或使用 assign 系統函數指派值給整數陣列資料欄位,有效值會包括 {3} 和 {3 + 5, 7}。 但是,值 {3.0} 和 {3 + 5.5, 7} 無效。

整數到浮點

小數點和 0 將附加到整數最後一位數字之後。

在同時包含浮點和整數值的複式表示式內,如果運算子需要相同資料類型的值,便會發生隱含的轉換。 在此情況下,整數值會在評估表示式之前轉換成浮點資料類型。 例如,如果您指定 1.5 + 2,則 2 會轉換成 2.0。

註: 整數到浮點的轉換不會發生在含有簡式表示式之陣列資料欄位的起始設定中。 指定為浮點陣列之簡式表示式的所有元素必須是浮點值。 例如,您可以指定 {3.0} 或 { convert(1, float) },但不能指定 {3}。


前次更新: 2016 年 3 月
bpfe016.htm

© Copyright IBM Corp. 2016.